在一台CentOS服务器上开启多个MySQL服务

发布于:2025-05-10 ⋅ 阅读:(12) ⋅ 点赞:(0)

1. 创建目录

mkdir -p /data/mysql3307/{data,tmp,logs}

# 赋权

chown -R mysql:mysql /data/mysql3307

chmod -R 750 /data/mysql3307

2.修改 /etc/my.cnf ,添加[mysqld3307]实例配置组

[mysqld3307]

# mysql服务的端口

port = 3307

# 套接字文件存放路径

socket = /data/mysql3307/mysql.sock

# mysql数据的存放路径

datadir = /data/mysql3307/data

# mysql临时文件的存放路径

tmpdir = /data/mysql3307/tmp/

# mysql服务使用的用户

user = mysql

# 字符集

character_set_server = utf8mb4

# 字符序

collation_server = utf8mb4_general_ci

# 错误日志

log-error = /data/mysql3307/logs/error.log

# 服务id

server-id = 3307

3. 初始化数据

# --defaults-group-suffix=3307指定使用 [mysqld3307] 配置组, --initialize初始化并生成随机密码

mysqld --defaults-group-suffix=3307  --initialize  --user=mysql --datadir=/data/mysql3307/data

# 获取密码

grep 'temporary password' /data/mysql3307/logs/error.log

4.创建 /etc/systemd/system/mysqld3307.service , 然后执行 systemctl daemon-reload 重新加载system服务配置

[Unit]

Description=MySQL Server 3307

After=network.target

[Service]

User=mysql

Group=mysql

ExecStart=/usr/sbin/mysqld --defaults-group-suffix=3307

ExecStop=/usr/bin/mysqladmin -S /data/mysql3307/mysql.sock shutdown

Restart=on-failure

[Install]

WantedBy=multi-user.target

5. 启动3307实例

systemctl start mysqld3307

# 查看状态

systemctl start mysqld3307

# 查看端口是否在监听中

lsof -i:3307

6. 登录mysql3307

mysql -u root -pPASSWD -h127.0.0.1 -P3307

# 首次登录需要修改密码

ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

FLUSH PRIVILEGES;


网站公告

今日签到

点亮在社区的每一天
去签到