您的位置:首页 > 数据库 > MySQL

Mysqld_multi单机启动多个mysql

2013-06-09 16:05 309 查看
1.mysqld_multi 介绍:

根据Mysql管理手册中提到:每个Mysql的服务都可为独立的,所以它都调用一个my.cnf中各自不同的启动选项--就是下文中将提到的GNR值,使用不同的端口,生成各自的套接文件,服务的数据库都是独立的(更多可查阅mysql官方网站的英文管理手册)。mysqld_multi是管理多个mysqld的服务进程,这些服务进程程序不同的unix socket或是监听于不同的端口。他可以启动、停止和监控当前的服务状态。程序在my.cnf(或是在--config-file自定义的配置文件)中搜索[mysqld#]段,"#"可以是任意的正整数。这个正整数就是在下面提及的段序列,即GNR。段的序号做为mysqld_multi的参数,来区别不同的段,这样你就可以控制特定mysqld进程的启动、停止或得到他的报告信息。这些组里的参数就像启动一个mysqld所需要的组的参数一样。但是,如果使用多服务,必须为每个服务指定一个unix socket或端口。

2.实例:单机实现两个mysql运行,监听端口分别是 3301,3302

先建好用来存放数据库资料的相应的文件夹路径(datadir使用的目录),并设置相应的权限。

Mkdir –p /opt/app/mysql5/var-mysql168

Mkdir –p /opt/app/mysql5/var-mysql170

给两个目录赋予权限:

Chown –R mysql:mysql var-mysql168

Chown –R mysql:mysql var-mysql170

chmod -R 700 var-mysql168

chmod -R 700 var-mysql168

进到msyql的安装目录:

#cd /opt/software/mysql-5.1.33

#./scripts/mysql_install_db --user=mysql --datadir=/opt/app/mysql5/var-mysql168/

#./scripts/mysql_install_db --user=mysql --datadir=/opt/app/mysql5/var-mysql170/

修改my.cnf文件如下(把原来的[mysqld]段改成如下):

[mysqld_multi]
mysqld = /opt/app/mysql5/bin/mysqld_safemysqladmin = /opt/app/mysql5/bin/mysqladmin
user = root

[mysqld1]
user = mysql
pid-file = /opt/app/mysql5/var-mysql168/mysqld1.pid
socket = /opt/app/mysql5/var-mysql168/mysqld168.sock
port = 3301
datadir = /opt/app/mysql5/var-mysql168
#log = /opt/app/mysql5/var-mysql168/log.log
skip-locking
skip-name-resolve

[mysqld2]
user = mysql
pid-file = /opt/app/mysql5/var-mysql170/mysqld2.pid
socket = /opt/app/mysql5/var-mysql170/mysqld170.sock
port = 3302
datadir = /opt/app/mysql5/var-mysql170
#log = /opt/app/mysql5/var-mysql170/log.log
skip-locking
skip-name-resolve

3.使用mysqld_multi启动或者关闭数据库:
mysqld_multi start 1 & 启动mysqld1数据库
mysqld_multi start 2 & 启动mysqld2数据库
或者mysqld_multi start 1,2 & 同时启动mysqld1、mysqld2数据库,关闭同启动!

登陆mysql168数据库:mysql -uroot -S /opt/app/mysql5/var-mysql168/mysqld168.sock
或者:mysql -P3301 -u用户名 -p密码 -hip地址
登陆mysql170数据库:mysql -uroot -S /opt/app/mysql5/var-mysql168/mysqld170.sock
或者:mysql -P3302 -u用户名 -p密码 -hip地址

注意,用端口访问,第一是用户名必须有密码,第二要防火墙能通过3301和3302端口。

本文出自 “linux” 博客,谢绝转载!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: