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

  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

  1. 初始化数据

--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

  1. 启动3307实例

systemctl start mysqld3307

查看状态

systemctl start mysqld3307

查看端口是否在监听中

lsof -i:3307

  1. 登录mysql3307

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

首次登录需要修改密码

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

FLUSH PRIVILEGES;

相关推荐
ccecw12 小时前
Mysql ONLY_FULL_GROUP_BY模式详解、group by非查询字段报错
数据库·mysql
JH307312 小时前
达梦数据库与MySQL的核心差异解析:从特性到实践
数据库·mysql
七夜zippoe12 小时前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
盟接之桥13 小时前
盟接之桥说制造:引流品 × 利润品,全球电商平台高效产品组合策略(供讨论)
大数据·linux·服务器·网络·人工智能·制造
Fcy64814 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满14 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
主机哥哥14 小时前
阿里云OpenClaw部署全攻略,五种方案助你快速部署!
服务器·阿里云·负载均衡
Goat恶霸詹姆斯15 小时前
mysql常用语句
数据库·mysql·oracle
珠海西格电力科技16 小时前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市
释怀不想释怀16 小时前
Linux环境变量
linux·运维·服务器