01 编写服务启动配置文件
首先,参考正常MySQL数据库服务启动的systemd配置文件信息:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| vim /etc/systemd/system/mysqld.service [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=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf LimitNOFILE=5000
|
其次,可以根据默认的MySQL数据库服务启动文件,编写多实例启动文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
| vim /etc/systemd/system/mysqld3307.service [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=/usr/local/mysql/bin/mysqld --defaults-file=/data/3307/my.cnf LimitNOFILE=5000
vim /etc/systemd/system/mysqld3308.service [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=/usr/local/mysql/bin/mysqld --defaults-file=/data/3308/my.cnf LimitNOFILE=5000
vim /etc/systemd/system/mysqld3308.service [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=/usr/local/mysql/bin/mysqld --defaults-file=/data/3308/my.cnf LimitNOFILE=5000
|
02 加载服务启动配置文件
1 2
| systemctl daemon-reload
|
03 测试服务启动停止操作
1 2 3 4 5 6 7 8 9 10 11 12 13
| systemctl start mysqld3307 systemctl start mysqld3308 systemctl start mysqld3308
ss -lntp|grep mysql
systemctl stop mysqld3307 systemctl stop mysqld3308 systemctl stop mysqld3308
ss -lntp|grep mysql
|
部署数据库程序多个版本服务实例
01 数据库服务程序下载解压
…省略…
确认数据库服务安装部署后情况:
1 2 3 4 5 6 7
| ll -d mysql* lrwxrwxrwx 1 root root 35 10月 27 23:28 mysql56 -> mysql-5.6.48-linux-glibc2.12-x86_64 drwxr-xr-x 13 root root 191 10月 27 23:27 mysql-5.6.48-linux-glibc2.12-x86_64 -r-------- 1 root root 343082156 10月 27 23:00 mysql-5.6.48-linux-glibc2.12-x86_64.tar.gz lrwxrwxrwx 1 root root 35 10月 27 23:29 mysql57 -> mysql-5.7.30-linux-glibc2.12-x86_64 drwxr-xr-x 9 root root 129 10月 27 23:28 mysql-5.7.30-linux-glibc2.12-x86_64 -r-------- 1 root root 660017902 10月 27 23:02 mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
|
02 数据库服务环境变量取消
1 2 3 4 5 6 7 8 9
| vim /etc/profile export PATH=/usr/local/mysql/bin:$PATH -- 配置信息注释掉后,可以重新建立远程连接,生成新的会话信息
mysql -V -bash:mysql:command not found -- 看到以上信息,表示数据库服务已经被注释
|
03 数据库服务配置文件移除
04 数据库服务实例配置目录
1 2 3 4
| mkdir -p /data/3356/data mkdir -p /data/3357/data chown -R mysql. /data/*
|
05 数据库服务初始过程操作
1 2 3 4 5 6 7 8 9 10
| /usr/local/mysql56/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql56/ --datadir=/data/3356/data -- 初始化命令执行完毕后,输出信息显示两个ok,就表示5.6版本数据库程序初始化成功
/usr/local/mysql57/bin/mysqld --user=mysql --initialize-insecure --basedir=/usr/local/mysql57/ --datadir=/data/3357/data
.. 省略.. -- 初始化操作命令与操作过程和5.7一致,不做重复性操作了
|
06 数据库服务配置文件编写
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| cat >/data/3356/my.cnf <<EOF [mysqld] user=mysql basedir=/usr/local/mysql56 datadir=/data/3356/data socket=/tmp/mysql3356.sock port=3356 EOF
cat >/data/3357/my.cnf <<EOF [mysqld] user=mysql basedir=/usr/local/mysql57 datadir=/data/3357/data socket=/tmp/mysql3357.sock port=3357 EOF
|
# 数据库服务实例服务配置文件编写:8.0 .. 省略.. — 多实例配置文件信息和5.7一致,不做重复性操作了
07 数据库服务配置启动文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| vim /etc/systemd/system/mysqld3356.service [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=/usr/local/mysql56/bin/mysqld --defaults-file=/data/3356/my.cnf LimitNOFILE=5000
vim /etc/systemd/system/mysqld3357.service [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=/usr/local/mysql57/bin/mysqld --defaults-file=/data/3357/my.cnf LimitNOFILE=5000
...省略...
|
08 数据库服务程序启动操作
1 2 3 4 5 6 7 8 9 10 11 12
| systemctl start mysqld3356 systemctl start mysqld3357
ss -lntp|grep mysqld LISTEN 0 80 [::]:3356 [::]:* users:(("mysqld",pid=65995,fd=10)) LISTEN 0 80 [::]:3357 [::]:* users:(("mysqld",pid=66082,fd=20))
mysql -S /tmp/mysql3356.sock mysql -S /tmp/mysql3357.sock
|