原mysql基础上配置多实例

原来通过yum安装了mysql数据库,在此基础上有添加一个实例,实现多实例,配置 多实例主要有两种方式,一个是每个实例一个配置文件,一种是一个配置文件,通过mysqld_mulit来统一管理的,本文介绍后一种方式。

yum安装mysql

查看mysql是否已安装

yum list installed mysql*
或
rpm -qa|grep mysql*

查看有关mysql的安装包

yum list mysql*

安装mysql客户端

yum install mysql -y

安装mysql服务

yum install mysql-server mysql-devel -y

安装完成后,我们来看一下原配置文件/etc/my.cnf

原mysql基础上配置多实例_第1张图片
/etc/my.cnf

此文件的部分配置我们将在mysql_multi.cnf文件中使用,当然也可以自己创建新的,完全弃用此文件的配置

创建数据目录

因为考虑使用默认的部分配置,所以我们只创建新增实例的数据目录

mkdir  /var/lib/mysql_3307

修改目录的属主

chown -R mysql.mysql /var/lib/mysql_3307

创建并配置mysql_multi.cnf

[root@mio ~]# vi /etc/mysql_multi.cnf

[mysqld_multi]
mysqld = /usr/bin/mysqld_safe   #这里的命令路径通过whereis 查询,见下图
mysqladmin = /usr/bin/mysqladmin
#user = root      #数据库的登录帐号和密码,初始安装数据库是木有密码的,
#password = 123456        所以我先注销,稍后设了密码再取消注释,要求两个实例帐号密码一样,不然没法关闭实例
log = /var/log/mysqld_multi.log
[mysqld3306]
socket = /var/lib/mysql/mysql.sock
datadir= /var/lib/mysql
pid-file =/var/lib/mysql/3306.pid
log =/var/lib/mysql/3306.log
user = mysql
port = 3306
[mysqld3307]
socket = /var/lib/mysql_3307/mysql3307.sock
datadir=/var/lib/mysql_3307
pid-file =/var/lib/mysql_3307/3307.pid
log =/var/lib/mysql_3307/3307.log
user= mysql
port=3307
原mysql基础上配置多实例_第2张图片
image.png

初始化实例

刚刚只是yum 安装了数据库服务,并木有初始化,所以我们初始化两个实例

mysql_install_db --datadir=/var/lib/mysql --user=mysql
mysql_install_db --datadir=/var/lib/mysql_3307 --user=mysql

两个“OK”表示初始化成功


原mysql基础上配置多实例_第3张图片
image.png

查看、启动、关闭多实例

查看多实例的状态

mysqld_multi --defaults-extra-file=/etc/mysql_multi.cnf report
原mysql基础上配置多实例_第4张图片
image.png

启动实例

mysqld_multi --defaults-extra-file=/etc/mysql_multi.cnf  start
原mysql基础上配置多实例_第5张图片
image.png

关闭实例

mysqld_multi --defaults-extra-file=/etc/mysql_multi.cnf stop

还可以单独启动和关闭实例

mysqld_multi --defaults-extra-file=/etc/mysql_multi.cnf start 3306
mysqld_multi --defaults-extra-file=/etc/mysql_multi.cnf start 3307
mysqld_multi --defaults-extra-file=/etc/mysql_multi.cnf stop 3306
mysqld_multi --defaults-extra-file=/etc/mysql_multi.cnf stop 3307

你可能感兴趣的:(原mysql基础上配置多实例)