MySQL - 初始化配置(单机以及多实例)
目录
三、配置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<<EOF [mysqld] basedir=/opt/mysql datadir=/data/3307/data user=mysql socket=/data/3307/mysql.sock port=3307 server_id=3307 EOF
# 复制文件到其他实例目录下 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
三、配置systemd管理多实例 - 优化多实例的启动与关闭
# 修改指定数据库服务端的服务配置文件 cat >> /etc/systemd/system/mysqld3307.service <<EOF [Unit] Description=MySQL Server Documentation=man:mysqld(8) Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html After=network.target After=syslog.target [Install] WantedBy=multi-user.target [Service] User=mysql Group=mysql ExecStart=/opt/mysql/bin/mysqld --defaults-file=/data/3307/my.cnf LimitNOFILE = 5000 EOF # 拷贝给其他势力 cp /etc/systemd/system/mysqld3307.service /etc/systemd/system/mysqld3308.service cp /etc/systemd/system/mysqld3307.service /etc/systemd/system/mysqld3309.service # 修改拷贝文件内内容 sed -i 's#3307#3308#g' /etc/systemd/system/mysqld3308.service sed -i 's#3307#3309#g' /etc/systemd/system/mysqld3309.service
# 设置开机自启 systemctl enable mysqld3307 systemctl enable mysqld3308 systemctl enable mysqld3309
目录 返回
首页