centos7.2 mysql-5.7 多实例配置

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/cheungmine/article/details/80520973

centos7.2 mysql-5.7 多实例配置

登录到 mysql 服务端计算机上。如果没有启动,需要先启动 mysql:

# systemctl start mysqld

查询数据文件目录:

# mysqladmin -u root -p’YourNewPass’ variables | grep datadir
| datadir | /var/lib/mysql/

查询 mysql 使用的配置文件次序:

# mysql –help|grep ‘my.cnf’
order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf

按照上面的次序依次查找,找到第一个出现的 my.cnf,即 mysql 服务使用的配置文件。本例为:

/etc/my.cnf

修改配置文件:

# cp /etc/my.cnf /etc/my.cnf.old
# vi /etc/my.cnf

多实例配置参考:

Configuring Multiple MySQL Instances Using systemd


Step-1:

修改配置文件: /etc/my.cnf
注意只能保留 [mysqld],其他都必须先注释掉!只增加最后1行:

!includedir /etc/my.cnf.d

修改后:

# cat /etc/my.cnf

[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
default-storage-engine=MyISAM
max_connections=200

datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

symbolic-links=0

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

####  注释掉以下内容
##[mysql]
##default-character-set=utf8

##[mysql.server]
##default-character-set=utf8

##[mysqld_safe]
##default-character-set=utf8

##[client]
##default-character-set=utf8
##port=3306
##socket=/var/lib/mysql/mysql.sock

###########################################################################
# IMPORTANT: Additional settings that can override those from this file!
#  The files must end with '.cnf', otherwise they'll be ignored.
#
!includedir /etc/my.cnf.d

Step-2:

在 /etc/my.cnf.d 目录下增加新的mysqld实例的配置文件:

mysqld-3307.cnf

内容如下:

# cat /etc/my.cnf.d/mysqld-3307.cnf

[mysqld@3307]
character-set-server=utf8

collation-server=utf8_general_ci

datadir=/data/data12/mysqldb/mysql

socket=/data/data12/mysqldb/mysql/mysql.sock

port=3307

log-error=/var/log/mysqld-3307.log

pid-file=/var/run/mysqld/mysqld-3307.pid

symbolic-links=0

要注意的是 mysql 数据目录必须为空:

/data/data12/mysqldb/mysql 目录必须为空,权限设置如下:

# chown mysql:mysql /data/data12/mysqldb/mysql
# chmod 751 /data/data12/mysqldb/mysql

Step-3:

  • 启动第2个实例:

    # systemctl start mysql@3307

  • 登录修改密码:

找到 root 初始密码(备用)

# cat /var/log/mysqld-3307.log | grep password|grep root
# mysql_secure_installation -P 3307 -S /data/data12/mysqldb/mysql/mysql.sock

根据提示先输入 root 初始密码,然后更改为新密码。

  • 正常登陆 mysql

# mysql -u root -p’新密码’ -S /data/data12/mysqldb/mysql/mysql.sock -P 3307

Step-4:

将 /etc/my.cnf注释掉的内容恢复。

猜你喜欢

转载自blog.csdn.net/cheungmine/article/details/80520973