开发者学堂课程【如何-键安装部署 PolarDB-X:如何-键安装部署 PolarDB-X】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/981/detail/14923
如何一键安装部署 PolarDB-X
后面会改进,使用时无脑复制出来。
接下来进入一个编译的过程,可以参考官方的文档
# 进入 gatazyengine 代码路径
cd galaxyengine
#安装beost1.70(注:把boost放列仓库里避免下数)
wgethttps://boostarg-jfrog.in/artifactory/main/release/1.70.0/source/boost_1_7_0.tar-gz mkdir extra/boast
cp boost_1_7_0.targz extra/boost/
编译安装
#详组参数请参考
https://dev.mysql.con/doc/refman/8.0/en/sourceconfiguration-options.htnl
cnake_ \
-DFORCE_INSOURCE_BUILD-ON \
-DCHAKE_BUTLD_TYPE-"Debug" \
-DSYSCONFDIRa"/u61/mysql" \
-DCMAKE_INSTALL_PREFIX="/u1/myso" \
-DMYSQL_DATADIR="/u@1/mysq//data" \
-DWITH_B00ST="./extra/boost/boost_1_70_0.tar.gz"
make -j8
make install
mysql是依赖boost这个库的,先把他下载下来放到本地指定的目录之后在编译之前做一个指定。
Install之后,gatazyengine就在机器上安装好了,最终都是跟mysql保持一致的,装好之后就是机器上面多了一个mysql。这个就是dn,gms两个编译的过程。
下面是cn,他的安装依赖于vaven3工具,同时也依赖于jdk8。
#安装jdk1.8并配置环境资量JAVA_HOMEPATH
#安装maven3.8
Wget_https://dtcdn.apache.org/naven/maven-3/3.8.3/binaries/epache-naven-3.8.3-bin.tar-gz tar zxwf apache-naven-3.8.3-bintar.gt
export PATH=pwd/apache-naven-3.B.3/b1n/1SPATH
#确认Maven版本为3.8.3
mvn -v
#移动rpc代码到gataxyso目录下的potardbx-rpc
mv ga laxyglue gataxysq/polardbx-rpc
进入代码目录
cd galaxysel/
编译打包
mvn install -D naven.test.skiptrue-D envurelease
#解压运行
tar zxuf target/polardhx-server-5.4.12-SNAPSHOT.tar.gz
编译的过程如果是第一次安装的话,因为包比较大会有依赖,所以需要半个小时。
最后是cdc编译的过程
此步强编译和安装galaxycdc代码。
#进入CDC代码
# 编译打包
mvn install -D naven.test.skipatrue -D envurelease
#包在/polardbx-cdc-assenble/target/
#解压运行
tar 2xvf polardbx-bintog.tar.gz
编译好之后得到四个组件的安装包,之后就可以启动了
启动PolarDB-XDN
·此步骤启动一个mysqi进程,作为metadb和dn
.参考附录中的mysqi配置文件,可进行相应修改,默认使用4886 作为mysq端口,32886 作为私有协议端口
·默认使用/u01/my3306作为mysq数据目录,可以修改成其他目录
注意:启动DN需要使用非root账号完成
启动mysqi:
akdir -p /u01/my3306/{data,log,run,tmp,mysqL)
/u01/mysqt/bin/aysald-defaults-filewmy.cnf-initialize-insecure
/u01/mysa/bin/mysald-defaults-filemmy.cnf
启动时会将dn和gms共用一个进程,启动时不要使用root账号启动,如果使用root会报错。
之后就可以继续启动cn
启动mysql进程之后,便可以初始化PolarDB-X,需要准备以下几个配置:
·metadbuser:以下果用my_polarx
.metadb database:创建metadb库,以下采用polardbx_meta_db_polardbx·密码加密key(dnPasswordKey):以下采用asdf1234ghjk5678
·PolarDB-X默认用户名:默认为 potanxroot
·PolarDB-X默认用户密码:默认为123456,可通过-5参数修改
注意:启动CN 需要使用非root 账号完成
修改配置文件conf/server.properties:
#PolarDB-X 服务口
serverPort-8527
#a PolarDB-X RPCO
rpcPort-9890
#MetaDe地址
metaDbAdd-127.0.0.1:4886
#MetaDB私有协议店口
metaDbkpretoPort=32886
#MetaDB用户
metaDbuser-my_polarx
metaDbName=polardbx neta db_polardbx
# PolarDB-x实例名
instanceId=polardbx-polardbx
里面的参数可能需要修改,不要无脑复制
参数改好之后就可以进行初始化
初始化PolarDB-X
·-L:进入初始化模式
.-P:之前准备的dnPasswordKey
·-d:DataNode的地址列表,单机模式下就是之前启动的mysq进程的端口和地址·+连接metadb的密码
.-u:为PolarDB-X创建的根用户
·-S:为PolarDB-X创建的根用户密码
bin/startup,sh\
-T \
-Pasdt1234ghjk5678\
-d 127.0.0.11488632886\
-r’’’’\
-u:polardbx_root
-5 "123456"
初始化之后会打印出一段日志
此步强中会生成内部密码及加密密码,需要将其填写配置文件canf/serverproperties 中,用于后续访问:
Generate password for user:mypolarx&&MBWV5AK9S5hoYBtyCe+&113708+R6) Encrypted password DB84u4UkU/0YMzu3aj9NFdknvxTpedF1W9259bVnoc Root user for polark with possword:polardbx root &6123456 Encrypted password for polarx! HLAZXc 2NnCs61dNjH5nMvAs
…...m Paste following configurations to conf/serverproperties! metaDbPas5wd=HMqvkvX2tT7XedAGt2IWY8+D7fJWT3ir/mIYINf1b50=
日志打出一位初始化已经完成,之后找到
metaDbPas5wd=HMqvkvX2tT7XedAGt2IWY8+D7fJWT3ir/mIYINf1b50=
将他写到serverproperties里面
Cn配置文件已经写好
最后一步,启动PolarDB-X:
bin/startup.sh-Pasdf1234ghjk5678
连接PolarDB-X验证,如果能连上,说明数据库启动成功啦,可以愉快地运行各种SQL险:
mysql -h127.1 -P8527 -upolardbx_root
最后一步就是启动cdc
修改配置文件conf/config.properties,将如下示例中的$(HOME)替换为当前用户的根目录,如/home/mysq
useEncryptedPassword=true
potardbx.instance.id=polardbx-polardbx men_sizea16e0a
metaDb_urtmjdbcmysq1://127.0.0.1:4886/potardbx_neta_db_polardbx7useSSL=false metaDo username-mypolarx
metaDbPas5wd-HHqvkvXZtT7XedA6t2IWY8+D7fJWI31r/mY2Nf1b58=
polarx_url=jdbc:mysqt://127.0.0.1:8527/_cdc_ polarx_usernamepolardbx_root
polarxpassword=H1AzXc2NmCs61NjH5MVA= dnPasswordkeyasdf1234ghjk5678
storagepersistBasePath-S{HCME/1gs/racksdb binlog.dir.path=$(HOME)/binlog/
改好之后进行启动
bin/daemon.sh start
mysql配置文件
[mysqld]
socket=/u01/my3306/run/mysql.sock datadir=/u81/my3306/data
tmpdir-/u01/my3306/tmp
log-bin=/u81/my3306/mysq/mysgl-bin.log
Log-bin-index=/u81/my330G/mysq1/my5q1-bin.index
#log-error=/u01/my3306/nysal/naster-error.Log relay-log=/u01/my3306/mysa/slave-relay.log
relay-log-into-fite=/u01/my3306/mysq/slave-relay-teg.info relay-log-index=/u81/my3386/nysq1/slave-relay-log.index master-info-file=/u01/my330G/mysql/masterinfo
slow_query_log_file"/L/my3306/mysql/sLow_query.log innodb data_home dir-/u01/my3305/mysql
innadb_1og_group_hame_dir=/u81/my3306/mysqt
port-4886
loose_polarx_port=32886 loose_galaxy_port=32886
loose polarx max connections=5000
loose server 1d=476984231
loose_cluster-info=127.0.8.1:14886e1 loose_cluster-id=5431 loose enable gts=1
loose innedb_undo_retention=1808