mysql多实例配置、权限管理

就是在一台服务器上运行多个mysql实例,每个实例需要一个独立的端口,实例的配置可

以按实际需求进行设置

 

1、关闭原有的默认端口3306的mysql:service mysqd stop

 

2、配置mysql多实例

  # vim /etc/my.cnf
[mysqld_multi]
mysqld = /usr/local/mysql/bin/mysqld_safe
mysqladmin = /usr/local/mysql/bin/mysqladmin
user = mysql
log = /database/log/mysqld-muti.log

[mysqld1]

user = mysql

port = 3306
datadir = /database/data1
socket = /tmp/mysql1.sock
log_error = /database/data1/error.log
log_bin = /database/data1/mysqld1-bin
binlog_format = row
server_id = 1
pid_file = /database/data1/mysqld1.pid
expire_logs_days = 60


[mysqld2]

user = mysql

port = 3307
datadir = /database/data2
socket = /tmp/mysql2.sock
log_error = /database/data2/error.log
log_bin = /database/data2/mysqld2-bin
binlog_format = statement
server_id = 2
expire_logs_days = 30

pid_file = /database/data2/mysqld2.pid

 

 

[mysqld3]

user = mysql

port = 3308
datadir = /database/data3
socket = /tmp/mysql3.sock
log_error = /database/data3/error.log
log_bin = /database/data3/mysqld3-bin
binlog_format = mixed
server_id = 3
expire_logs_days = 30
pid_file = /database/data3/mysqld3.pid


 3、初始化数据库
 linux下my.cnf配置文件的搜索路径为:/etc/my.cnf./etc/mysql/my.cnf /usr/local/mysql/my.cnf,~/my.cnf # ./scripts/mysql_install_db --user=mysql --datadir=/database/data1

 

  # ./scripts/mysql_install_db --user=mysql --datadir=/database/data2

 # ./scripts/mysql_install_db --user=mysql --datadir=/database/data3
 

 

  

 

 

  4、更改环境变量
            QQ截图20150717113805.png

     启动前要保证 PATH 里面包括 mysql  bin 目录。可以把下面的命令写入 /etc/profile

       export PATH=$PATH:/usr/local/mysql/bin  

 

  或:由于是源码安装,所以mysql中用到的命令会在安装目录下的bin下面。需要加入环境变量才可以使用。 
如果不加入到环境变量中,只有在bin目录下才可以使用。 
       QQ截图20150717105454.png

 

 

 

  5、多实例管理

    (1) # mysqld_multi report

      QQ截图20150717113420.png

     如果不能启动。要记得查看错误日志
          # cat /etc/my.cnf

 

       QQ截图20150717121426.png

       QQ截图20150717121439.png

       QQ截图20150717121453.png

  可以得到错误日志存在于哪个目录下。

  然后查看错误日志。

                    

      QQ截图20150717113420.png

 

 

   (2)# mysqld_multi start 1,2,3  \\启动实例1,2,3

   (3)# mysqld_multi start 1-3    \\启动实例1,2,3 

 

    (4) # netstat -ntlp  \\检查是否成功启动

   (5)# mysqld_multi --user=root stop 1-3   \\停止实例1,2,3

      (6)# mysqld_multi report

  

 

  6、连接到指定的服务器

 # mysql -u root -S /tmp/mysql1.sock
 # mysql -u root -h 127.0.0.1 -P3308

posted @ 2018-03-05 11:28  你的快递到了吗  阅读(225)  评论(0编辑  收藏  举报