本文采用的是/data目录作为mysql多实例总的根目录,然后规划不同 的MySQL实例端口号来作为/data下面的二级目录,不同的端口号就是不同实例目录,以区别不同的实例,二级目录下包含mysql数据文件,配置文件以及启动文件的目录。

前提:按此文章https://www.qinzc.me/post-110.html

第3个安装方法完成MySQL的安装,再往下看。

(1)创建相关mysql多实例的目录如下 data.zip


pikll mysqld
ps -ef |grep mysql
unzip data.zip

[root@A-host data]# tree 
.
|-- 3306
|   `-- data
|-- 3307
|   `-- data
|-- data
     |-- 3306
     |   |-- my.cnf
     |   `-- mysql    --多实例启动脚本
     `-- 3307
          |-- my.cnf
         `-- mysql    --多实例启动脚


#权限设置
chown -R mysql.mysql /data

find /data/ -type f -name "mysql"|xargs chmod +x

#多实例数据库初始化,
/application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/data/3306/data/ --user=mysql
/application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/data/3307/data/ --user=mysql

tree /data

#启动
/data/3306/mysql start 
/data/3307/mysql start 

#检查
[root@b-mysql /]# netstat -lntup|grep 330
tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      12183/mysqld        
tcp        0      0 0.0.0.0:3307                0.0.0.0:*                   LISTEN      12896/mysqld   
到此看到端口已经开启,表示多实例部署完成.

错误日志在3306,3307目录下(日志输出可在my.conf里指定)

连接登录需要指定sock文件。

mysql -S /data/3306/mysql.sock
mysql> create database d3307;
qmysql> quit

mysql -S /data/3307/mysql.sock
mysql> create database d3307;
mysql> quit

#设置多实例密码
 /application/mysql/bin/mysqladmin -u root -S /data/3306/mysql.sock  password '123456'
 
 vim 3306/mysql  对应更改密码
 
 [root@A-host ~]# find /data -type f -name "mysql" -exec chmod 700 {} \;
 [root@A-host ~]# find /data -type f -name "mysql" -exec chown rott.root {} \;