postgresql集群方案hot standby 安装和测试
這兩天正忙著研究postgresql,基本用法和其他數據庫大同小異,先不自己講解,今天主要想記錄下postgresql的集群方案hot standby方式。
?
轉載請注明:http://blog.csdn.net/lengzijian/article/details/7704814
?
本人設置集群環境:
三臺電腦:一臺主數據庫和兩臺從數據庫
?
1.??????安裝Postgresql9
| tar -zxvf postgresql-9.1.3.tar.gz??? #解壓 cd postgresql-9.1.3 ./configure --prefix /home/proxy_pg/pgsql? #配置postgresql安裝目錄 這里需要安裝基礎的庫(gcc、readline、zlib、) #可以不必理會,make時會提示 make ????????????????????????#編譯 make install ???????????????????#安裝 |
2.??????添加postgres賬戶
| useradd postgres?????????????????? #添加賬戶 passwd postgres??????????????????? #之后輸入密碼 #之后進入postgres用戶 su postgres |
3.??????初始化主數據庫
| mkdir data??????????????????????? #在你想要存放數據的地方創建data文件夾 bin/initdb –D ../data/?????????????? #初始化數據庫 修改data/postgresql.conf port = 5433??????????????????????? #可以任意更改你想要的 wal_level = hot_standby max_wal_senders = 30 修改data/pg_hba.conf host??? replication???? all???????????? 0.0.0.0 0.0.0.0???????? trust |
4.??????啟動主數據庫
| bin/pg_ctl start -D ../data/ |
5.??????檢測數據庫是否啟動成功
| ./psql -d postgres psql (9.1.3) Type "help" for help. ? postgres=#?????????????????????????? #說明啟動成功了 |
6.??????基礎備份
| 基本流程:在主數據庫服務器上執行pg_start_backup(),復制data目錄,在執行pg_stop_backup()。 ? ./psql –d postgres postgres=# select pg_start_backup(‘’); #這姓這個方法后,所有請求在寫日志之后不會再刷新到磁盤。直到執行pg_stop_backup()這個函數。 #下面需要拷貝一份data目錄,并通過scp復制到子數據庫中 cp –R data /data_bac |
7.??????創建從數據庫(standby)
| #通過scp方式拷貝data_bac目錄到從數據庫下(當然也可以通過其他方式) scp -r data_bac/ postgres@192.168.30.199:/home/proxy_pg/pgsql/ #進入從數據庫服務器,進入剛剛拷貝過來的data_bac目錄下 cd data_bac #修改postgres.conf port = 5433 #改成你想的端口 hot_standby = on #增加recovery.conf配置下連接的主數據庫信息(ip、端口、用戶) standby_mode = 'on' primary_conninfo = 'host=192.168.30.150 port=5433 user=postgres' ? #刪除pid文件 rm postmaster.pid |
8.??????啟動從數據庫
| bin/pg_ctl start -D ../data_bac/ |
9.??????停止主數據庫基礎備份
| postgres=# select pg_stop_backup(); 這里要注意的是:8和9步可以顛倒,因為先停止備份后,當從數據庫啟動會,會自動連接主數據庫,拉取服務器自基礎備份后的事務日志,然后,對事物日志進行重演。 |
10.??測試
| #為了方便查看數據庫,我安裝了pgAdminII
當在主數據庫中創建一張表并插入三條數據后,觀察從數據庫: #創建數據庫lengzijian ./createdb lengzijian -p 5433????? #主從庫全部都會創建lengzijian數據庫 #接下來可以創建表,并且插入字段。這里就不演示了。 |
?
11.??總結
這里只是做了初步的集群安裝,postgresql的集群方案還有好多種,本人會演示所有方案,之后會對每一種方案進行檢測,如果你有做好的實驗或者方案,不放分享給我。我來匯總下,在本篇文章中,如果遇到任何問題,可以隨時留言,看到會第一時間回復!
周末愉快
總結
以上是生活随笔為你收集整理的postgresql集群方案hot standby 安装和测试的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 真实的金陵十三钗:15名传教士的爱与泪
- 下一篇: Shell_参数替换(転)