码迷,mamicode.com
首页 > 数据库 > 详细

MySQL多实例部署

时间:2015-04-02 06:44:54      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:mysql

mysql的多实例有两种方式可以实现,两种方式各有利弊。
第一种是使用多个配置文件启动不同的进程来实现多实例,这种方式的优势逻辑简单,配置简单,缺点是管理起来不太方便。
第二种是通过官方自带的mysqld_multi使用单独的配置文件来实现多实例,这种方式定制每个实例的配置不太方面,优点是管理起来很方便,集中管理

第一种使用多个配置文件启动多个进行

1.安装编译好数据库

2.进行数据库初始化

/usr/local/mysql_3306/bin/mysql_install_db --basedir=/usr/local/mysql_3306 --datadir=/data/dbdata_3306 --user=mysql
/usr/local/mysql_3307/bin/mysql_install_db --basedir=/usr/local/mysql_3307 --datadir=/data/dbdata_3307 --user=mysql
/usr/local/mysql_3308/bin/mysql_install_db --basedir=/usr/local/mysql_3308 --datadir=/data/dbdata_3308 --user=mysql

3.分别创建各自的配置文件(需要指定各自的数据目录,端口,socket文件)

vim /data/dbdata_3306/my.cnf

vim /data/dbdata_3307/my.cnf

vim /data/dbdata_3308/my.cnf

4.通过配置问题启动各个实例

/bin/sh /usr/local/mysql_3306/bin/mysqld_safe --defaults-file=/data/dbdata_3306/my.cnf &

/bin/sh /usr/local/mysql_3307/bin/mysqld_safe --defaults-file=/data/dbdata_3307/my.cnf &

/bin/sh /usr/local/mysql_3308/bin/mysqld_safe --defaults-file=/data/dbdata_3308/my.cnf &

关闭不同的实例

a.kill -9 进程ID

b./bin/sh /usr/local/mysql_3306/bin/mysqladmin -u ${mysql_username} -p${mysql_password} -S /data/dbdata_${mysql_port}/mysql.sock shutdown 

第二种方式通过官方自带的mysql_multi进行配置

1.安装和初始化数据库与第一种方式一样

2.编辑配置文件(三个实例的配置文件放在一起)

vi /etc/my.cnf

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

[mysqld1]    //定义实例3306

socket /data/dbdata_3306/mysql.sock

port = 3306

pid-file = /data/dbdata_3306/3306.pid

datadir = /data/dbdata_3306

..........

[mysqld2]    //定义实例3307

socket /data/dbdata_3307/mysql.sock

port = 3307

pid-file = /data/dbdata_3307/3307.pid

datadir = /data/dbdata_3307

..........

[mysqld3]    //定义实例3308

socket /data/dbdata_3308/mysql.sock

port = 3308

pid-file = /data/dbdata_3308/3308.pid

datadir = /data/dbdata_3308

..........

3.启动各个实例

/usr/local/mysql/bin/mysqld_multi start 1

/usr/local/mysql/bin/mysqld_multi start 2

/usr/local/mysql/bin/mysqld_multi start 3

或者

/usr/local/mysql/bin/mysqld_multi start 1-3

本文出自 “咚咚的博客” 博客,谢绝转载!

MySQL多实例部署

标签:mysql

原文地址:http://weadyweady.blog.51cto.com/3012956/1627510

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!