01 编写服务启动配置文件
首先,参考正常MySQL数据库服务启动的systemd配置文件信息:
| 12
 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数据库服务启动文件,编写多实例启动文件
| 12
 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 加载服务启动配置文件
| 12
 
 | systemctl daemon-reload
 
 | 
03 测试服务启动停止操作
| 12
 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 数据库服务程序下载解压
…省略…
确认数据库服务安装部署后情况:
| 12
 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 数据库服务环境变量取消
| 12
 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 数据库服务实例配置目录
| 12
 3
 4
 
 | mkdir -p /data/3356/data
 mkdir -p /data/3357/data
 chown -R mysql. /data/*
 
 | 
05 数据库服务初始过程操作
| 12
 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 数据库服务配置文件编写
| 12
 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 数据库服务配置启动文件
| 12
 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 数据库服务程序启动操作
| 12
 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
 
 |