设为首页 加入收藏

TOP

MySQL搭建系列之多实例(二)
2015-07-24 11:08:27 来源: 作者: 【 】 浏览:2
Tags:MySQL 搭建 系列 实例
a/bin/mysqld_safe --user=mysql &

# /usr/local/mysqlb/bin/mysqld_safe --user=mysql &

??查看进程

# ps -ef|grep mysql

root 1694 26876 0 13:04 pts/2 00:00:00 more/usr/local/mysqla/support-files/mysql.server

root 2270 13474 0 13:13 pts/1 00:00:00 /bin/sh/usr/local/mysqla/bin/mysqld_safe --user=mysql

mysql 2805 2270 113:13 pts/1 00:00:00 /usr/local/mysqla/bin/mysqld--basedir=/usr/local/mysqla --datadir=/data/lib/mysqla--plugin-dir=/usr/local/mysqla/lib/plugin --user=mysql--log-error=/data/lib/mysqla/mysql.err --pid-file=/data/lib/mysqla/mysql.pid--socket=/data/lib/mysqla/mysql.sock --port=3306

root 2828 13474 0 13:13 pts/1 00:00:00 /bin/sh/usr/local/mysqlb/bin/mysqld_safe --user=mysql

mysql 3361 2828 25 13:13 pts/1 00:00:00 /usr/local/mysqlb/bin/mysqld--basedir=/usr/local/mysqlb --datadir=/data/lib/mysqlb --plugin-dir=/usr/local/mysqlb/lib/plugin--user=mysql --log-error=/data/lib/mysqlb/mysql.err--pid-file=/data/lib/mysqlb/mysql.pid --socket=/data/lib/mysqlb/mysql.sock--port=3307

root 3381 13474 0 13:13 pts/1 00:00:00 grep mysql

可以看出,成功启动了两个MySQL实例(进程)

??若要关闭服务,可执行如下命令

# /usr/local/mysqla/bin/mysqladmin shutdown

# /usr/local/mysqlb/bin/mysqladmin shutdown

5. 修改为服务管理方式

为了方便管理,将其修改为服务管理方式,如下:

??拷贝服务文件

# cp /usr/local/mysqla/support-files/mysql.server/etc/rc.d/init.d/mysqla

# cp /usr/local/mysqlb/support-files/mysql.server/etc/rc.d/init.d/mysqlb

??添加服务

# chkconfig --add mysqla

# chkconfig --list mysqla

mysqla 0:off 1:off 2:on 3:on 4:on 5:on 6:off

# chkconfig --add mysqlb

# chkconfig --list mysqlb

mysqlb 0:off 1:off 2:on 3:on 4:on 5:on 6:off

??启动服务

# service mysqla start

Starting MySQL.. [ OK ]

[root@db ~]# service mysqlb start

Starting MySQL.. [ OK ]

至此,我们通过源码包成功搭建了两个MySQL实例,它们拥有独立的端口、参数文件及数据库

二. 采用二进制包安装MySQL实现多实例

二进制包其实就是已经过编译的源码包,不能再通过定制参数文件缺省路径的方法来隔离各个实例的参数文件了;但有一点需要说明的是:第3个参数文件的缺省路径指的是basedir(安装目录),可通过它来隔离各实例的参数文件,因此一台服务器也就可搭建多个MySQL实例了。

同样安装两个MySQL实例,步骤如下:

1. 准备工作

??创建mysql系统组及用户

# groupadd -g 497 mysql

# useradd -u 499 -g mysql mysql

??解压安装包

将二进制安装包解压到/usr/local/目录中,并改名为mysql,这是二进制包编译时basedir参数的缺省目录。

# tar zxvf mysql-5.5.17-linux2.6-x86_64.tar.gz -C /usr/local/

# cd /usr/local/

# mv mysql-5.5.17-linux2.6-x86_64 mysql

??拷贝解压后的mysql,生成如下两个文件夹,以用作两个实例的安装目录

# cd /usr/local/

# cp -R mysql mysqla

# cp -R mysql mysqlb

# ll

drwxr-xr-x 12 root root 4096 Sep 27 14:33 mysql

drwxr-xr-x 12 root root 4096 Sep 27 14:36 mysqla

drwxr-xr-x 12 root root 4096 Sep 27 14:37 mysqlb

备注:此处保留mysql这个目录,是为了配置硬连接,以便在任何目录下,都可以访问mysql客户端程序。

2. 创建系统数据库

为两个MySQL实例创建系统数据库,basedir分别为/usr/loca/mysqla|mysqlb,datadir分别为/data/lib/mysqla|mysqlb,如下:

# cd /usr/local/mysql/

# scripts/mysql_install_db --user=mysql--basedir=/usr/local/mysqla --datadir=/data/lib/mysqla

# scripts/mysql_install_db --user=mysql--basedir=/usr/local/mysqlb --datadir=/data/lib/mysqlb

3. 配置参数文件

为了使每个MySQL实例拥有独立的参数文件,将其存放在各自的安装目录下(basedir),且需保证缺省路径下不存在参数文件,以防读取错误。

假设参数文件已配置好,端口分别为3306、3307,basedir分别为/usr/local/mysqla、/usr/local/mysqlb,datadir分别为/data/lib/mysqla、/data/lib/mysqlb。

4. 启动实例

这种情况下,可在启动实例时通过--defaults-file为其指定一个参数文件,如下:

# /usr/local/mysql/bin/mysqld_safe--defaults-file=/usr/local/mysqla/my.cnf &

# /usr/local/mysql/bin/mysqld_safe--defaults-file=/usr/local/mysqlb/my.cnf &

关闭实例时,同样需要指定其参数文件

首页 上一页 1 2 3 4 5 下一页 尾页 2/5/5
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇解决MySQL出现大量unauthenticate.. 下一篇shell实现,将mysql每个存储过程..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Java 学习线路图是怎 (2025-12-25 15:19:15)
·关于 Java 学习,有 (2025-12-25 15:19:12)
·有没有Java swing教 (2025-12-25 15:19:09)
·Start, Stop, and Di (2025-12-25 14:50:57)
·C语言入门教程:零基 (2025-12-25 14:50:54)