試過了嗡载,糾正一下博主的整個過程,如果按照博主的方法來操作,中間會有3個報錯,無法進行下去:
1. cd /opt/gitlab/embedded/postgresql/9.6/bin
./pg_basebackup -h 192.168.1.9 -p 5432 -U gitlab_replicator -F p -P -D /var/opt/gitlab/postgresql/data/
這里報錯,提示版本不匹配,經(jīng)查我這邊是10以上版本,要改為
cd /opt/gitlab/embedded/postgresql/10/bin
./pg_basebackup -h 192.168.1.9 -p 5432 -U gitlab_replicator -F p -P -D /var/opt/gitlab/postgresql/data/
2. 報錯沒有slot可同步席函,pg_basebackup: could not create temporary replication slot,需要在主庫里修改
max_replication_slots = 10 這里原為0冈涧,改成10茂附,這個必須改,否則無法備份督弓。
3. postgresql同步雖然可以按博主的方法實現(xiàn)营曼,但是從gitlab是無法登錄的,會報錯: 500 Whoops, something went wrong on our end愚隧, 經(jīng)過檢查蒂阱,是因為從庫同步時,表為只讀狂塘,而登錄時是需要update 用戶登錄表的录煤,因此就直接報錯無法登錄,解決辦法是把postgresql 同步關(guān)掉荞胡,不要用同步功能妈踊,這個postgresql根本不需要實時同步,只需要每天凌晨執(zhí)行 ./pg_basebackup -h 192.168.1.9 -p 5432 -U gitlab_replicator -F p -P -D /var/opt/gitlab/postgresql/data/ 過來后泪漂,重啟postgresql即可廊营,這里面數(shù)據(jù)不大,沒必要做成主從同步萝勤,這樣gitlab就可以登錄了露筒。總之纵刘,博主的文檔很細邀窃,只是把postgresql同步改進一下就可以了。謝謝假哎。