Heim >Datenbank >MySQL-Tutorial >MYSQL多实例配置与使用教程_MySQL

MYSQL多实例配置与使用教程_MySQL

WBOY
WBOYOriginal
2016-06-01 13:18:14884Durchsuche

bitsCN.com 原文http://www.111cn.net/database/mysql/58651.htm

在实际的开发过程中,可能会需要在一台服务器上部署多个MYSQL实例,那建议使用MYSQL官方的解决方案 mysqld_multi

 1.修改my.cnf
 
如一个定义两个实例的参考配置:

 代码如下 复制代码

[mysqld_multi]
mysqld = /usr/local/mysql/bin/mysqld_safe
mysqladmin = /usr/local/mysql/bin/mysqladmin
user = your_user
password = your_password

[mysqld1]
datadir = /data/db/my1

#连接
port = 3306
socket = /tmp/mysql3306.sock

#binlog
log-bin=/data/db/mylog1/mysql-bin
binlog_format=mixed
binlog_cache_size = 32M
expire_logs_days = 30

[mysqld2]
datadir = /data/db/my2

#连接
port = 3307
socket = /tmp/mysql3307.sock

#binlog
log-bin=/data/db/mylog2/mysql-bin
binlog_format=mixed
binlog_cache_size = 32M
expire_logs_days = 3

 
2.创建数据目录

 代码如下 复制代码
mkdir -p /data/db/my21
mkdir -p /data/db/my2
chown mysql.mysql /data/db/my1 -R
chown mysql.mysql /data/db/my2 -R

3.初始化DB

 代码如下 复制代码

/usr/local/mysql/scripts/mysql_install_db --datadir=/data/db/my1/ -uroot (mysql_install_db也是MYSQL官方自带工具)
/usr/local/mysql/scripts/mysql_install_db --datadir=/data/db/my2/ -uroot
chown mysql.mysql /data/db/my1/ -R
chown mysql.mysql /data/db/my2/ -R

4. 安装工具

 代码如下 www.111cn.net 复制代码

cp /usr/local/mysql/bin/my_print_defaults /usr/bin/
cp /usr/local/mysql/bin/mysqld_multi /usr/bin/

5.创建、授权用户

 代码如下 复制代码

CREATE USER "your_user"@"192.168.1.%" IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON *.* TO "your_user"@"192.168.1.%";
flush privileges;

至此,mysql多实例配置已经完毕。我们看到多个不同的MYSQL实例是共用my.cnf的。多实例命令行管理:
1.mysql启动

 代码如下 复制代码

mysqld_multi start 1 启动实例1
mysqld_multi start 1-2 启动实例1,2

2.mysql重启

 代码如下 复制代码

mysqld_multi restart 1 重启实例1
mysqld_multi restart 1-2 重启实例1,2

3.mysql关闭

 代码如下 复制代码

mysqld_multi stop 1 关闭实例1
mysqld_multi stop 1-2 关闭实例1,2

4.命令行登陆实例2

 代码如下 复制代码

mysql -u your_user -p your_password -P3307 -S /tmp/mysql3307.sock


后面附另一文章的

Mysqld_multi启动、关闭、状态检查
要想调用mysqld_multi,使用下面的语法:

shell> mysqld_multi [options] {start|stop|report} [GNR[,GNR] ...]

start、stop和report表示你想要执行的操作。你可以在单个服务器或多个服务器上执行指定的操作,取决于选项名后面的GNR 列。如果没有该列,mysqld_multi为选项文件中的所有服务器执行该操作。

每个GNR值代表一个选项组号或组号范围。GNR值应为选项文件中组名末尾的号。www.111cn.net 例如,组[mysqld17]的GNR为17。要想指定组号的范围,用破折号间隔开第1个和最后1个号。GNR值10-13代表组[mysqld10]到[mysqld13]。可以在命令行中指定多个组或组范围,用逗号间隔开。GNR列不能有空格字符(空格或tab);空格字符后面的内容将被忽略掉。

该命令使用选项组[mysqld1]启动单个服务器:

 代码如下 复制代码

shell> /usr/local/mysql/bin/mysqld_multi --defaults-extra-file=/etc/my.cnf start 1

该命令停止多个服务器,使用选项组[mysql8]和[mysqld10]至[mysqld13]:

 代码如下 复制代码

shell>/usr/local/mysql/bin/mysqld_multi --defaults-extra-file=/etc/my.cnf stop 8,10-13

或者一下形式关闭单个服务器

 代码如下 复制代码

shell> mysqladmin -u root -S /tmp/mysql3306.sock shutdown

该命令查看多个服务器,使用选项组[mysql8]和[mysqld10]至[mysqld13]:

 代码如下 复制代码

shell>/usr/local/mysql/bin/mysqld_multi --defaults-extra-file=/etc/my.cnf report 8,10-13

 你可能感兴趣的文章
  • Mysql 多实例启动配置详解
bitsCN.com
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn