日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

从零开始使用AntDB

發布時間:2023/12/14 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 从零开始使用AntDB 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

安裝AntDB步驟:

1、從github上下載源碼:

https://github.com/ADBSQL/AntDB

2、編譯、安裝到指定目錄下,例如$HOME/pgsql_xc

  • 編譯:

../adb_sql/configure --prefix=$HOME/pgsql_xc --with-segsize=8 --with-wal-segsize=64 --with-wal-blocksize=64 --with-perl --with-python --with-openssl --with-pam --with-ldap --with-libxml --with-libxslt --enable-thread-safety --enable-cassert --enable-debug --enable-depend CFLAGS='-DADB -O0 -ggdb3'

  • 安裝:

make install-world-contrib-recurse -j 3 >/dev/null

?

3、初始化manager

命令:initmgr –D 目錄,例如initmgr –D /home/user1/mgr

(mgr目錄會自動創建,如果本來就存在,應該保證目錄為空,否則會初始化失敗)

初始化后,在mgr文件加下生成如下文件:

1.2、(可選)修改mgr配置文件

Manager的默認端口是6432,可以修改/home/user1/mgr/postgresql.conf文件,例如修改為8432,只要與其它進程號不沖突。

修改為

4?、啟動manager

有兩種方式:

1、mgr_ctl start -D 路徑

2、adbmgrd -D 路徑&

方式一(推薦):mgr_ctl start -D 路徑

方式二:adbmgrd -D 路徑&

啟動后,查看進程如下:

5?、 連接到manager上

-p后面是端口號,剛才已將默認的6432修改為7432。

6、添加主機

manager通過三張表管理集群,host、node、param表。

首先需要在host表中添加主機信息,后面gtm、datanode、coordinator會部署到這些主機上。

添加命令:

add host 主機名(address, agentport, user, adbhome);

查看命令:

list host;

里面的參數可以不寫,有默認值, 例如port可以不寫,默認22,user默認值是當前用戶,(例子中將manager安裝在user1,集群安裝在user2下,所以這里需要配置user=’user2’)。

舉例:

add host localhost1(port=22,protocol='ssh',adbhome='/home/mass/pgsql_xc',address="10.1.226.201",agentport=8442,user='mass');

add host localhost2(port=22,protocol='ssh',adbhome='/home/mass/pgsql_xc',address="10.1.226.202",agentport=8442,user='mass');

add host localhost3(port=22,protocol='ssh',adbhome='/home/mass/pgsql_xc',address="10.1.226.203",agentport=8442,user='mass');

7???? deploy

deploy命令會將ADB的bin的上級目錄復制到host表中的主機上。

命令:

一次部署所有主機

deploy all password='123456';

部署指定的主機

deploy localhost1,localhost2 password='123456';

8?、啟動agent。

有兩種方式:一次啟動全部agent和單獨啟動一臺主機agent(多個主機需要多次執行),password是host表中配置的user對應的密碼。

一次啟動全部agent

start agent all password='123456';

啟動指定的agent

start agent localhost1,localhost2 password='123456';

查看agent已經啟動

9、配置集群節點

Node表中添加coordinator、datanode slave、datanode master信息。

注意: host名稱必須來自host表,端口號不要沖突,path指定的文件夾必須為空,否則初始化將失敗。

添加命令:

1、?? 添加coordinator信息:

add coordinator 名字(path = 'xxx', host='localhost1', port=xxx);

2、?? 添加datanode master信息:

add datanode master 名字(path = 'xxx', host='localhost1', port=xxx);

3、?? 添加datanode slave和extra信息,從節點與master同名,所以同名的master必須存在,同異步關系通過sync參數設置。

add datanode slave名字 for master名字(host='localhost2', port=xxx, path='xxx', sync=t);

add datanode extra名字 for master名字(host='localhost2', port=xxx, path='xxx', sync=f);

4、?? 添加gtm信息,從節點必須與主節點同名;

add gtm master名字(host='localhost3',port=xxx, path='xxx');

add gtm slave名字 for master名字(host='localhost2',port=xxx, path='xxx');

add gtm extra名字 for master名字(host='localhost1',port=xxx, path='xxx');

添加完成后,list node查看剛剛添加的節點信息:

list node;

舉例:

add coordinator master coord0(path = '/home/mass/pgdata_xc/coord/0', host='localhost1', port=4332);

add coordinator master coord1(path = '/home/mass/pgdata_xc/coord/1', host='localhost2', port=4332);

add datanode master dm0(path = '/home/mass/pgdata_xc/datanode/0', host='localhost1', port=14332);

add datanode slave ds0 for dm0(host='localhost2',port=14332,path='/home/mass/pgdata_xc/datanode/00');

add datanode master dm1(path = '/home/mass/pgdata_xc/datanode/1', host='localhost2', port=24332);

add datanode slave ds1 for dm1(host='localhost1',port=24332,path='/home/mass/pgdata_xc/datanode/11');

add gtm master gtm(host='localhost3',port=6655, path='/home/mass/pgdata_xc/gtm');

?

10、配置節點參數

?? 同時設置所有同類型節點:

set datanode|coordinator|gtm all(key1=value1, key2=value2...);

?? 設置某一個節點的參數

set {datanode|coordinator|gtm} {master|slave|extra} {nodename|all} (key1=value1, key2=value2...);

注意:相同的參數,slave的參數必須大于等于master,否則啟動失敗,查看log如下:

? ?2016-09-06 10:50:55.730 CST 22023 0FATAL:? hot standby is not possible because max_prepared_transactions = 100 is a lower setting than on the master server (its value was 150)

設置完成后

?? reset參數:

reset {datanode|coordinator|gtm} {master|slave|extra} {nodename|all} (key1,key2...); (key,...) 也可以 (key=value,key2,...),但是value沒有作用。

若param表中存在參數設置,則刪除;若存在all但是現在只reset 單個nodename,則新加1行參數信息在param表中。

11、init all啟動集群

集群的節點都已經配置完成,此時就可以用init all啟動集群了。如下圖,可以看到init all內部的操作步驟。

此時集群已經啟動,可以登錄到coordinator上,創建表,導入數據等。

?

轉載于:https://my.oschina.net/u/3771732/blog/1610936

總結

以上是生活随笔為你收集整理的从零开始使用AntDB的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。