首页 > 代码库 > mysql多实例配置

mysql多实例配置


Mysql多实例常见配置方法:

安装mysql依赖的包

yum install ncurses-devel libaio-devel -y

mysql的配置文件:拉到服务器

[root@MySql ~]# tree

.

|-- 3306

|   |-- my.cnf

|   `-- mysql

|-- 3307

|   |-- my.cnf

|   `-- mysql

拷贝配置文件

[root@MySql ~]# mkdir -p /data/3306

[root@MySql ~]# mkdir -p /data/3307


 [root@MySql ~]# cp 3306/my.cnf /data/3306

[root@MySql ~]# cp 3306/mysql /data/3306    

[root@MySql ~]# cp 3307/my.cnf /data/3307 

[root@MySql ~]# cp 3307/mysql /data/3307



[root@MySql 3306]# vi my.cnf

server-id = 1  两个配置文件的server-id要不一样


授权:

[root@MySql 3306]# chmod +x /data/3306/mysql

[root@MySql 3306]# chmod +x /data/3307/mysql


[root@MySql ~]# chown -R mysql.mysql /data

[root@MySql 3306]# pwd

/data/3306

[root@MySql 3306]# ll

total 12

drwxr-xr-x 2 mysql mysql 4096 Mar 21 22:28 data

-rw-r--r-- 1 mysql mysql 1899 Mar 20 04:15 my.cnf

-rw-r--r-- 1 mysql mysql 1307 Mar 20 04:15 mysql



多实例启动文件的启动mysql服务实质:

mysqld_safe --defaults-file=/data/3306/my.cnf >/dev/null 2&>1

mysqld_safe --defaults-file=/data/3307/my.cnf >/dev/null 2&>1

多实例启动文件的停止mysql服务实质:

mysqladmin -uroot -p123456 -S /data/3306/mysql.sock shutdown

mysqladmin -uroot -p123456 -S /data/3307/mysql.sock shutdown



设置mysql启动命令环境变量,可以使用which mysql,然后使用cp



初始化mysql多实例的数据库文件

第一:初始化命令为:

Mysql5.1.X初始化命令:

mysql_install_db --basedir=/usr/local/mysql --datadir=/data/3306/data --user=mysql

Mysql5.5.X初始化命令:

cd /usr/local/mysql/scripts       ?和5.1的路径不同,不在mysql   bin路径下了。

./ mysql_install_db --basedir=/usr/local/mysql --datadir=/data/3306/data --user=mysql

操作

[root@MySql ~]# cd /usr/local/mysql/scripts/

[root@MySql scripts]# ll

total 16

-rwxr-xr-x 1 7161 wheel 14816 Jun 19  2013 mysql_install_db

[root@MySql scripts]# ./mysql_install_db --basedir=/usr/local/mysql --datadir=/data/3306/data --user=mysql

 [root@MySql scripts]# ./mysql_install_db --basedir=/usr/local/mysql --datadir=/data/3307/data --user=mysql



第二:启动数据库

[root@MySql scripts]# /data/3306/mysql start

Starting MySQL...

[root@MySql scripts]# /data/3307/mysql start 

Starting MySQL...


[root@MySql scripts]# netstat -lnptu |grep 330                                      tcp        0      0 0.0.0.0:3307                0.0.0.0:*                   LISTEN      6668/mysqld         

tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      1367/mysqld         


启动后查看目录

[root@MySql 3306]# ll

total 36

drwxr-xr-x 5 mysql mysql 4096 Mar 21 23:11 data

-rw-r--r-- 1 mysql mysql 1891 Mar 21 23:05 my.cnf

-rwxr-xr-x 1 mysql mysql 1305 Mar 21 22:51 mysql

-rw-rw---- 1 mysql mysql  126 Mar 21 23:07 mysql-bin.000001

-rw-rw---- 1 mysql mysql  107 Mar 21 23:11 mysql-bin.000002

-rw-rw---- 1 mysql mysql   56 Mar 21 23:11 mysql-bin.index

srwxrwxrwx 1 mysql mysql    0 Mar 21 23:11 mysql.sock

-rw-r----- 1 mysql root  2792 Mar 21 23:11 mysql_3306.err

-rw-rw---- 1 mysql mysql    5 Mar 21 23:11 mysqld.pid


[root@MySql 3307]# ll

total 28

drwxr-xr-x 5 mysql mysql 4096 Mar 21 23:07 data

-rw-r--r-- 1 mysql mysql 1893 Mar 21 23:04 my.cnf

-rwxr-xr-x 1 mysql mysql 1305 Mar 21 22:52 mysql

srwxrwxrwx 1 mysql mysql    0 Mar 21 23:07 mysql.sock

-rw-r----- 1 mysql root  1403 Mar 21 23:07 mysql_3307.err

-rw-rw---- 1 mysql mysql    5 Mar 21 23:07 mysqld.pid



登录数据库

Mysql数据库安装完后,默认情况下,管理员账号是五密码的。

[root@MySql 3306]# mysql -S /data/3306/mysql.sock

mysql> system ls    ==》不退出执行命令

data    mysql             mysql-bin.000002  mysql.sock      mysql_oldboy3306.err

my.cnf  mysql-bin.000001  mysql-bin.index   mysql_3306.err  mysqld.pid


system mysql -S /data/3307/mysql.sock;  直接登录到另外一个数据库


重启数据库

[root@MySql scripts]# /data/3306/mysql stop

[root@MySql scripts]# /data/3306/mysql start


mysql多实例配置完成


本文出自 “比尔linux运维笔记” 博客,请务必保留此出处http://chenshoubiao.blog.51cto.com/6159058/1884113

mysql多实例配置