pgAdmin 1.6 online documentation
Slony-I 1.2.15 Documentation
The PostgreSQL Global Development Group
Copyright © 2004-2006 The PostgreSQL Global Development Group
Table of Contents
- Slony-I Introduction
- 1. Introduction to Slony-I
- 1.1. What Slony-I is
- 1.2. Why yet another replication system?
- 1.3. What Slony-I is not
- 1.4. Why doesn't Slony-I do automatic fail-over/promotion?
- 1.5. Current Limitations
- 1.6. Replication Models
- 2. Slony-I Communications
Costs
- 3. System Requirements
- 3.1. Slony-I Software Dependancies
- 3.2. Getting Slony-I Source
- 3.3. Database Encoding
- 3.4. Time Synchronization
- 3.5. Network Connectivity
- 4. Slony-I Installation
- 4.1. Short Version
- 4.2. Configuration
- 4.3. Example
- 4.4. Build
- 4.5. Installing Slony-I Once Built;
- 4.6. Building Documentation: Admin Guide
- 4.7. Installing Slony-I from RPMs
- 4.8. Installing the Slony-I service on Windows
- 5. Slony-I Concepts
- 5.1. Cluster
- 5.2. Node
- 5.3. Replication Set
- 5.4. Origin, Providers and Subscribers
- 5.5. slon Daemon
- 5.6. slonik Configuration Processor
- 6. Defining Slony-I Clusters
- 7. Defining Slony-I Replication Sets
- 7.1. Primary Keys
- 7.2. Grouping tables into sets
- 7.3. The Pathology of Sequences
- Slony-I Administration
- 1. Slony-I Best Practices
- 2. Replicating Your First Database
- 2.1. Creating the pgbench user
- 2.2. Preparing the databases
- 2.3. Configuring the Database for Replication.
- 3. Slon daemons
- 4. Subscribing Nodes
- 5. Monitoring
- 5.1. Nagios Replication Checks
- 5.2. Monitoring Slony-I using MRTG
- 5.3. test_slony_state
- 5.4. search-logs.sh
- 5.5. Building MediaWiki Cluster Summary
- 6. Slony-I Maintenance
- 6.1. Watchdogs: Keeping Slons Running
- 6.2. Parallel to Watchdog: generate_syncs.sh
- 6.3. Testing Slony-I State
- 6.4. Replication Test Scripts
- 6.5. Other Replication Tests
- 6.6. Log Files
- 7. Reshaping a Cluster
- 8. Doing switchover and failover with Slony-I
- 8.1. Foreword
- 8.2. Controlled Switchover
- 8.3. Failover
- 8.4. Automating FAIL OVER
- 8.5. After Failover, Reconfiguring
Former Origin
- 9. Slony-I listen paths
- 9.1. How listening can break
- 9.2. How the listen configuration should look
- 9.3. Automated Listen Path Generation
- 10. Slony-I Path Communications
- 11. Locking Issues
- 12. A Task-Oriented View of Slony-I
- 12.1. Adding a table to replication
- 12.2. How to add columns to a replicated table
- 12.3. How to remove replication for a node
- 12.4. Adding A Node To Replication
- 12.5. How do I reshape subscriptions?
- 12.6. How do I use Section 14, “Log Shipping - Slony-I with Files”
- 12.7. How do I know replication is working?
- 12.8. How do I upgrade Slony-I to a newer version?
- 12.9. What happens when I fail over?
- 12.10. How do I move master to a new node?
- 12.11. How Do I Do A Full Sync On A Table?
- 13. Dropping things from Slony-I Replication
- 13.1. Dropping A Whole Node
- 13.2. Dropping An Entire Set
- 13.3. Unsubscribing One Node From One Set
- 13.4. Dropping A Table From Replication
- 13.5. Dropping A Sequence From Replication
- 14. Log Shipping - Slony-I with Files
- 14.1. Usage Hints
- 14.2. slony_logshipper Tool
- 15. Database Schema Changes (DDL)
- 15.1. Changes that you might not want to
process using EXECUTE SCRIPT
- 15.2. Testing DDL Changes
- 16. Using Slonik
- 17. Embedding Slonik in Shell Scripts
- 18. Not Using Slonik - Bare Metal Slony-I
Functions
- 19. Slony-I Administration Scripts
- 19.1. altperl Scripts
- 19.2. mkslonconf.sh
- 19.3. launch_clusters.sh
- 19.4. slony1_extract_schema.sh
- 19.5. slony-cluster-analysis
- 19.6. Generating slonik scripts
using configure-replication.sh
- 19.7. slon.in-profiles
- 20. Partitioning Support
- 20.1. Support for Dynamic Partition Addition
- 21. Slony-I Upgrade
- 22. Using Slony-I for PostgreSQL Upgrades
- 23. Slony-I Test Bed Framework
- 24. Log Analysis
- 24.1. CONFIG notices
- 24.2. DEBUG Notices
- 24.3. How to read Slony-I logs
- 24.4. Log Messages and Implications
- 25. More Slony-I Help
- 25.1. Other Information Sources
- Slony-I FAQ
- I. Core Slony-I Programs
-
slon — Slony-I daemon
- Run-time Configuration
- 1. Logging
- 2. Connection settings
- 3. Archive Logging Options
- 4. Event Tuning
-
slonik — Slony-I command processor
- Slonik Command Summary
- 1. Introduction
- 1.1. General outline
- I. Slonik Meta Commands
-
INCLUDE — pulling in slonik code from another file
-
DEFINE — Defining a named symbol
- II. Slonik Preamble Commands
-
CLUSTER NAME — preamble - identifying Slony-I cluster
-
ADMIN CONNINFO — preamble - identifying PostgreSQL database
- III. Configuration and Action commmands
-
ECHO — Generic output tool
-
EXIT — Terminate Slonik script with signal
-
INIT CLUSTER — Initialize Slony-I cluster
-
STORE NODE — Initialize Slony-I node
-
DROP NODE — Remove the node from participating in the replication
-
UNINSTALL NODE — Decommission Slony-I node
-
RESTART NODE — Restart Slony-I node
-
STORE
PATH — Configure Slony-I node connection
-
DROP PATH — Delete Slony-I connection information
-
STORE LISTEN — Configure Slony-I node to
indicate where to listen for events
-
DROP LISTEN — Eliminate configuration indicating how
Slony-I node listens for events
-
TABLE ADD KEY — Add primary key for use by
Slony-I for a table with no suitable
key
-
CREATE SET — Create Slony-I replication
set
-
DROP SET — Discard Slony-I
replication set
-
MERGE
SET — Merge Slony-I replication
sets together
-
SET ADD TABLE — Add a table to a Slony-I
replication set
-
SET ADD SEQUENCE — Add a sequence to a
Slony-I replication set
-
SET DROP TABLE — Remove a table from a
Slony-I replication set
-
SET DROP SEQUENCE — Remove a sequence from a
Slony-I replication set
-
SET MOVE
TABLE — Move a table from one
Slony-I replication set to another
-
SET MOVE SEQUENCE — Move a sequence from one
Slony-I replication set to another
-
STORE TRIGGER — Indicate that a trigger should not be disabled by
Slony-I on a subscriber node
-
DROP TRIGGER — Return a trigger to default behavior, where it will
not fire on subscriber nodes
-
SUBSCRIBE SET — Start replication of Slony-I set
-
UNSUBSCRIBE SET — End replication of Slony-I set
-
LOCK SET — Guard Slony-I replication
set to prepare for
MOVE SET
-
UNLOCK SET — Unlock a Slony-I set that was locked
-
MOVE SET — Change origin of a Slony-I
replication set
-
FAILOVER — Fail a broken replication set over to a backup node
-
EXECUTE SCRIPT — Execute SQL/DDL script
-
UPDATE FUNCTIONS — Reload stored functions
-
WAIT FOR EVENT — Have Slonik script wait for previous event to
complete
-
REPAIR CONFIG — Resets the name-to-oid mapping of tables in a replication set, useful for restoring a node after a pg_dump.
-
SYNC — Generate an ordinary SYNC event
-
SLEEP — Sleep using system
sleep()
- Slony-I Supported Platforms
- Release Checklist
- 1. Schema schemadoc
- 1.1. Table:
sl_archive_counter
- 1.2. Table:
sl_config_lock
- 1.3. Table:
sl_confirm
- 1.4. Table:
sl_event
- 1.5. Table:
sl_listen
- 1.6. Table:
sl_log_1
- 1.7. Table:
sl_log_2
- 1.8. Table:
sl_node
- 1.9. Table:
sl_nodelock
- 1.10. Table:
sl_path
- 1.11. Table:
sl_registry
- 1.12. View:
sl_seqlastvalue
- 1.13. Table:
sl_seqlog
- 1.14. Table:
sl_sequence
- 1.15. Table:
sl_set
- 1.16. Table:
sl_setsync
- 1.17. Table:
sl_subscribe
- 1.18. Table:
sl_table
- 1.19. Table:
sl_trigger
- 1.20. add_empty_table_to_replication( integer, integer, text, text, text, text )
- 1.21. add_missing_table_field( text, text, text, text )
- 1.22. addpartiallogindices( )
- 1.23. altertableforreplication( integer )
- 1.24. altertablerestore( integer )
- 1.25. checkmoduleversion( )
- 1.26. cleanupevent( )
- 1.27. cleanupnodelock( )
- 1.28. copyfields( integer )
- 1.29. createevent( name, text )
- 1.30. createevent( name, text, text )
- 1.31. createevent( name, text, text, text )
- 1.32. createevent( name, text, text, text, text )
- 1.33. createevent( name, text, text, text, text, text )
- 1.34. createevent( name, text, text, text, text, text, text )
- 1.35. createevent( name, text, text, text, text, text, text, text )
- 1.36. createevent( name, text, text, text, text, text, text, text, text )
- 1.37. createevent( name, text, text, text, text, text, text, text, text, text )
- 1.38. ddlscript_complete( integer, text, integer )
- 1.39. ddlscript_complete_int( integer, integer )
- 1.40. ddlscript_prepare( integer, integer )
- 1.41. ddlscript_prepare_int( integer, integer )
- 1.42. denyaccess( )
- 1.43. determineattkindserial( text )
- 1.44. determineattkindunique( text, name )
- 1.45. determineidxnameserial( text )
- 1.46. determineidxnameunique( text, name )
- 1.47. disablenode( integer )
- 1.48. disablenode_int( integer )
- 1.49. droplisten( integer, integer, integer )
- 1.50. droplisten_int( integer, integer, integer )
- 1.51. dropnode( integer )
- 1.52. dropnode_int( integer )
- 1.53. droppath( integer, integer )
- 1.54. droppath_int( integer, integer )
- 1.55. dropset( integer )
- 1.56. dropset_int( integer )
- 1.57. droptrigger( integer, name )
- 1.58. droptrigger_int( integer, name )
- 1.59. enablenode( integer )
- 1.60. enablenode_int( integer )
- 1.61. enablesubscription( integer, integer, integer )
- 1.62. enablesubscription_int( integer, integer, integer )
- 1.63. failednode( integer, integer )
- 1.64. failednode2( integer, integer, integer, bigint, bigint )
- 1.65. failoverset_int( integer, integer, integer, bigint )
- 1.66. forwardconfirm( integer, integer, bigint, timestamp without time zone )
- 1.67. generate_sync_event( interval )
- 1.68. getlocalnodeid( name )
- 1.69. getmoduleversion( )
- 1.70. getsessionrole( name )
- 1.71. initializelocalnode( integer, text )
- 1.72. killbackend( integer, text )
- 1.73. lockedset( )
- 1.74. lockset( integer )
- 1.75. logswitch_finish( )
- 1.76. logswitch_start( )
- 1.77. logswitch_weekly( )
- 1.78. logtrigger( )
- 1.79. mergeset( integer, integer )
- 1.80. mergeset_int( integer, integer )
- 1.81. moveset( integer, integer )
- 1.82. moveset_int( integer, integer, integer, bigint )
- 1.83. reachablefromnode( integer, integer[] )
- 1.84. rebuildlistenentries( )
- 1.85. registernodeconnection( integer )
- 1.86. registry_get_int4( text, integer )
- 1.87. registry_get_text( text, text )
- 1.88. registry_get_timestamp( text, timestamp without time zone )
- 1.89. registry_set_int4( text, integer )
- 1.90. registry_set_text( text, text )
- 1.91. registry_set_timestamp( text, timestamp without time zone )
- 1.92. replicate_partition( integer, text, text, text, text )
- 1.93. sequencelastvalue( text )
- 1.94. sequencesetvalue( integer, integer, bigint, bigint )
- 1.95. setaddsequence( integer, integer, text, text )
- 1.96. setaddsequence_int( integer, integer, text, text )
- 1.97. setaddtable( integer, integer, text, name, text )
- 1.98. setaddtable_int( integer, integer, text, name, text )
- 1.99. setdropsequence( integer )
- 1.100. setdropsequence_int( integer )
- 1.101. setdroptable( integer )
- 1.102. setdroptable_int( integer )
- 1.103. setmovesequence( integer, integer )
- 1.104. setmovesequence_int( integer, integer )
- 1.105. setmovetable( integer, integer )
- 1.106. setmovetable_int( integer, integer )
- 1.107. setsessionrole( name, text )
- 1.108. slon_quote_brute( text )
- 1.109. slon_quote_input( text )
- 1.110. slonyversion( )
- 1.111. slonyversionmajor( )
- 1.112. slonyversionminor( )
- 1.113. slonyversionpatchlevel( )
- 1.114. storelisten( integer, integer, integer )
- 1.115. storelisten_int( integer, integer, integer )
- 1.116. storenode( integer, text, boolean )
- 1.117. storenode_int( integer, text, boolean )
- 1.118. storepath( integer, integer, text, integer )
- 1.119. storepath_int( integer, integer, text, integer )
- 1.120. storeset( integer, text )
- 1.121. storeset_int( integer, integer, text )
- 1.122. storetrigger( integer, name )
- 1.123. storetrigger_int( integer, name )
- 1.124. subscribeset( integer, integer, integer, boolean )
- 1.125. subscribeset_int( integer, integer, integer, boolean )
- 1.126. tableaddkey( text )
- 1.127. tabledropkey( integer )
- 1.128. tablehasserialkey( text )
- 1.129. terminatenodeconnections( integer )
- 1.130. uninstallnode( )
- 1.131. unlockset( integer )
- 1.132. unsubscribeset( integer, integer )
- 1.133. unsubscribeset_int( integer, integer )
- 1.134. updaterelname( integer, integer )
- 1.135. updatereloid( integer, integer )
- 1.136. upgradeschema( text )
|
|