如何-键安装部署 PolarDB-X|学习笔记(三)

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
简介: 快速学习如何-键安装部署 PolarDB-X

开发者学堂课程【如何-键安装部署 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

相关文章
|
存储 Go
Go语言接口声明规范和最佳实践
Go语言接口声明规范和最佳实践
351 0
|
SQL Kubernetes 关系型数据库
如何一键安装部署PolarDB-X
《PolarDB-X 动手实践》系列第一期,体验如何一键安装部署PolarDB-X。
|
Kubernetes 容器
k8s集群—node节点的删除与添加
k8s集群—node节点的删除与添加
1224 0
|
存储 关系型数据库 MySQL
PolarDB-X 开源 | 基于Paxos的MySQL三副本
PolarDB-X 作为PolarDB分布式版,是阿里巴巴自主设计研发的高性能云原生分布式数据库产品,采用 Shared-nothing 与存储分离计算架构,支持集中式和分布式一体化形态,具备金融级数据高可用、分布式水平扩展、混合负载、低成本存储和极致弹性等能力,坚定以兼容MySQL开源生态构建分布式能力,为用户提供高吞吐、大存储、低延时、易扩展和超高可用的云时代数据库服务。
PolarDB-X 开源 | 基于Paxos的MySQL三副本
|
12月前
|
人工智能 IDE 程序员
AI程序员入场!揭秘直播吧研发效能大提升的秘密武器
对于直播吧而言,这不仅是工具升级,更是研发模式向「人与AI协同型」跃迁的战略选择。
|
Java API 持续交付
apache nifi 如何进行二次开发?
【10月更文挑战第23天】apache nifi 如何进行二次开发?
779 2
|
存储 运维 安全
什么是日志审计系统?性价比较高的日志审计系统有哪些?
日志审计系统主要是通过对信息系统中的各种信息进行采集分析和存储管理的,通过日志统计和汇总等功能实现对信息系统日志的全面审计;规范的日志管理对企业是否合规的评判具有重要帮助。
112 0
什么是日志审计系统?性价比较高的日志审计系统有哪些?
|
关系型数据库 分布式数据库 PolarDB
PolarDB产品使用问题之如何将PolarDB容器内的目录挂载到宿主机的指定目录
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
Shell Python
如何将PyCharm中的终端运行前面的PS如何修改成当前环境
这篇文章介绍了如何在PyCharm的终端中修改命令提示符(PS)以反映当前激活的环境,通过更改PyCharm设置中的Shell Path实现。
微信小程序实现上传视频 / 上传图片功能以及整合上传视频 / 上传图片功能(超详细)
微信小程序实现上传视频 / 上传图片功能以及整合上传视频 / 上传图片功能(超详细)