MySQL - 初始化配置(单机以及多实例)

目录

一、单机环境下的初始化配置

1.1 初始化数据:

1.2  配置文件

二、多实例下的初始化位置

2-0 查看多配置文件的使用顺序

2-1 创建相关目录

2-2 创建配置文件

2-3 初始化数据

2-4 启动多实例

2-5 实例的状态查看

三、配置systemd管理多实例  - 优化多实例的启动与关闭


一、单机环境下的初始化配置

1.1 初始化数据:

/usr/local/mysql/bin/mysqld --initialize-insecure  --user=mysql --datadir=/opt/mysql/data --basedir=/opt/mysql

1.2  配置文件

vim /etc/my.cnf


[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/mydata
socket=/tmp/mysql.sock
log_error=/var/log/mysql.log
user=mysql
port=6606
[mysql]
socket=/tmp/mysql.sock


作用:

  • 1.影响服务端的启动

标签: [mysqld]   [mysqld_safe]  [server] ...

[mysqld]
basedir=/opt/mysql          # 数据库文件路径    
datadir=/opt/mysql/data         # 数据库数据文件路径 
user=mysql         # 数据库连接用户
socket=/tmp/mysql.sock         # 数据库连接文件路径 
port=3306 
server_id=6
  • 2.影响客户端连接

标签: [client]   [mysql]  [mysqldump] ....

[mysql] 
socket=/tmp/mysql.sock

二、多实例下的初始化位置

2-0 查看多配置文件的使用顺序

2-1 创建相关目录

mkdir -p /data/330{7..9}/data 

2-2 创建配置文件

cat>> /data/3307/my.cnf<

MySQL - 初始化配置(单机以及多实例)_第1张图片

MySQL - 初始化配置(单机以及多实例)_第2张图片

# 复制文件到其他实例目录下
cp /data/3307/my.cnf /data/3308 
cp /data/3307/my.cnf /data/3309 

# 修改文件内的对应内容
sed -i 's#3307#3308#g' /data/3308/my.cnf 
sed -i 's#3307#3309#g' /data/3309/my.cnf 

2-3 初始化数据

mysqld --initialize-insecure  --user=mysql --datadir=/data/3307/data --basedir=/opt/mysql
mysqld --initialize-insecure  --user=mysql --datadir=/data/3308/data --basedir=/opt/mysql
mysqld --initialize-insecure  --user=mysql --datadir=/data/3309/data --basedir=/opt/mysql

2-4 启动多实例

# 修改数据目录的使用权限
chown -R mysql.mysql /data/*

# 测试环境下的启动
mysqld_safe --defaults-file=/data/3307/my.cnf &
mysqld_safe --defaults-file=/data/3308/my.cnf &
mysqld_safe --defaults-file=/data/3309/my.cnf &

2-5 实例的状态查看

netstat -lnp|grep 330

# 通过测试后启动正式的数据库软件
mysql -S /data/3307/mysql.sock
mysql -S /data/3308/mysql.sock
mysql -S /data/3309/mysql.sock

MySQL - 初始化配置(单机以及多实例)_第3张图片

三、配置systemd管理多实例  - 优化多实例的启动与关闭

# 修改指定数据库服务端的服务配置文件
cat >> /etc/systemd/system/mysqld3307.service <

MySQL - 初始化配置(单机以及多实例)_第4张图片

# 设置开机自启
 systemctl enable  mysqld3307
 systemctl enable  mysqld3308
 systemctl enable  mysqld3309

MySQL - 初始化配置(单机以及多实例)_第5张图片

你可能感兴趣的:(MySQL)