信创数据库Polardb-x部署
polardb-x的rpm包在linux中部署
·
1、下载官网中的rpm包
PolarDB_PolarDB社区_开源社区_数据库_阿里云
2、安装rpm包
yum install -y <下载的rpm>
3、创建用于启动数据库的用户
# 创建并切换到 polarx 用户
useradd -ms /bin/bash polarx
# 下面账号密码自己设置
echo "polarx:PassWord" | chpasswd # 用户和密码
echo "polarx ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
su - polarx
4、创建数据目录
cd /data/soft
mkdir polardbx-engine
cd polardbx-engine && mkdir log mysql run data tmp
5、编辑polardb-x的配置文件
vim my.cnf # 也可以是polardbx.cnf
配置文件示例和注解:
[mysqld]
basedir = /opt/polardbx_engine # MySQL/PolarDB-X 引擎的安装目录(不建议更改)
log_error_verbosity = 2 # 错误日志详细程度(0=错误,1=警告,2=信息)
default_authentication_plugin = mysql_native_password # 设置默认的用户认证插件(此处使用传统的 mysql_native_password)
# 开启 GTID(全局事务 ID)功能,方便主从复制和 failover
gtid_mode = ON # 启用 GTID 模式
enforce_gtid_consistency = ON # 强制 GTID 一致性,禁止不兼容 GTID 的事务
# 启用二进制日志功能(用于复制、恢复等)
log_bin = mysql-binlog # 设置二进制日志的文件名(前缀)
binlog_format = row # 使用行级日志格式(比 statement 更精确)
binlog_row_image = FULL # 记录完整的行镜像(所有字段)
# 主从复制时的信息存储方式
master_info_repository = TABLE # 主库信息保存在数据库表中(更安全)
relay_log_info_repository = TABLE # 从库 relay log 信息保存在数据库表中(更安全)
# 以下配置项根据实际环境可修改
datadir = /data/soft/polardbx-engine/data # 数据库存储目录(数据文件所在位置)
tmpdir = /data/soft/polardbx-engine/tmp # 临时文件目录(例如排序中间结果)
socket = /data/soft/polardbx-engine/tmp.mysql.sock # MySQL 使用的 socket 文件路径
log_error = /data/soft/polardbx-engine/log/alert.log # 错误日志文件路径
port = 4886 # MySQL 实例监听的端口号
# PolarDB-X 特有配置
cluster_id = 1234 # 集群 ID(用于标识所属集群)
cluster_info = 127.0.0.1:14886@1 # 集群元信息,格式为 IP:port@id
# MySQL 服务的唯一标识(用于主从复制)
server_id = 114 # 实例 ID(同一复制集群中不能重复)
6、对数据库进行初始化
注意如果配置文件my.cnf 不在当前目录,记得把命令的 my.cnf 改成绝对路径
/opt/polardbx_engine/bin/mysqld --defaults-file=my.cnf --initialize-insecure
7、启动数据库
/opt/polardbx_engine/bin/mysqld_safe --defaults-file=my.cnf &
初始化数据库会比较久,根据电脑性能相关,预计2-3分钟
8、登入数据库
如果服务器上已经安装过MySQL的话,可以直接通过:mysql -h127.0.0.1 -P4886 -uroot 来登入。没有的话yum install mysql 需要下载一个MySQL的客户端
9、登入后更新root用户密码
alter user 'root'@'localhost' identified by '123456';
10、创建一个新的用户用于外部连接
CREATE USER 'admin'@'%' IDENTIFIED BY 'newpass123'; # 创建新的用户(admin是用户名、%表示所有ip可以登入、by''中的内容是用户admin 的密码)
GRANT ALL PRIVILEGES ON mydb.* TO 'newuser'@'%'; # 配置mydb这个数据库的所有权限(数据库.表)
FLUSH PRIVILEGES; # 刷新权限使其生效
SHOW GRANTS FOR 'admin'@'%'; # 查看是否成功写入
11、navicat连接polardb-x数据库


这里的端口和之前的my.cnf(polardbx.cnf)中的port配置对应
更多推荐
所有评论(0)