linux下启动多个不同版本的mysql服务
时间:2014-07-06 17:21 来源:linux.it.net.cn 作者:IT网
一,我的电脑里面mysql的情况
我电脑里面有二个mysql
1,一个是软件管理工具安装的mysql,如yum,apt get,pacman这样的软件,版本是mysql5.1.50
2,另一个是我手动编译安装的,安装在/usr/local/mysql下面,版本是mysql5.1.26-rc-log
如果能启动多个mysql服务的话,其实有许多好处的,你可以查看一下mysql性能的提升啊;启动了多个mysql服务后,你可以进行数据库进的数据同步,做个mysql集群什么的等等,我的初忠呢是想搞个比较新版本,又不想把以前的那个msyql给搞得不能用了,最好都能用。
二,安装配置要注意的地方
1,安装的目录不要一样,不管你是用管理软件安装的,还是手动安装的,多个mysql不要安装在同一个目录。
2,数据库文件存放的地方,不要相同,也就是my.cnf里面的datadir的的设置不要一样
3,mysql的启动端口不要一样,默认的3306,多个时候可以13306,13307等最好设置成10000以外的。
4,mysql的服务socket不要设置成一样,就是my.cnf里面socket的设置不要一样
5,mysql服务的pid文件不要设置成一样,就是my.cnf里面pid-file的设置不要一样
看一下其中一个my.cnf中mysqld的配置,
-
[mysqld]
-
port = 13306
-
pid-file = /var/lib/mysql/mysql.pid
-
socket = /tmp/mysql50.sock
-
datadir = /var/lib/mysql
-
tmpdir = /tmp
-
basedir = /usr
-
skip-locking
-
#skip-federated
-
key_buffer = 16M
-
max_allowed_packet = 1M
-
table_cache = 64
-
sort_buffer_size = 512K
-
net_buffer_length = 16K
-
myisam_sort_buffer_size = 8M
另一个my.cnf中mysqld的配置
-
[mysqld]
-
pid-file = /usr/local/mysql/mysql.pid
-
socket = /tmp/mysql.sock
-
port = 3306
-
basedir = /usr/local/mysql
-
datadir = /usr/local/mysql/data
-
tmpdir = /tmp
-
language = /usr/local/mysql/share/mysql/english
-
long_query_time = 2
-
log-slow-queries = /usr/local/mysql/mysql-slow.log
-
-
skip-locking
-
key_buffer = 16M
-
max_allowed_packet = 1M
-
table_cache = 64
-
sort_buffer_size = 512K
-
net_buffer_length = 8K
-
read_buffer_size = 256K
-
read_rnd_buffer_size = 512K
-
myisam_sort_buffer_size = 8M
安装配置mysql的时候,就要注意上面的几点。
三,启动mysql服务器端
1,启动一个mysql,[root@BlackGhost zhangy]# mysqld_safe --user=root --skip-grant-tables
2,启动第二个mysql,[root@BlackGhost zhangy]# /usr/local/mysql/bin/mysqld_safe --user=root --skip-grant-tables
如果你用mysql.server来启动的话,就要注意一下点,要修改一下里面的内容,修改如下:大约218行左右
-
then
-
print_defaults="$bindir/mysql_print_defaults"
-
else
-
# Try to find basedir in /etc/my.cnf
-
conf=/usr/local/mysql/my.cnf //默认情况下是/etc/my.cnf
-
print_defaults=
-
if test -r $conf
-
then
如果你不修改,你用mysql.server根本无法启动,因为已经有一个mysql服务用了这个配置文件,到时肯定会提示错误的Starting MySQL.Manager of pid-file quit without updating file.[FAILED]
四,启动mysql的客户端
1,启动一个[root@BlackGhost zhangy]# mysql 如果用其他用户,加上-u
2,启动另一个[root@BlackGhost zhangy]# mysql -u root -S /tmp/mysql.sock 特别要注意这个mysql.sock如果不加的话,是启动不了的。二个msyql默认都是用一个.sock,肯定在什么地方可以改的,就根my.cnf差不多,只不过我没有找到而已
-
[zhangy@BlackGhost ~]$ ps -e|grep mysql
-
4638 pts/0 00:00:00 mysqld_safe
-
4781 pts/0 00:00:00 mysqld
-
4795 pts/0 00:00:00 mysql
-
4801 pts/1 00:00:00 mysqld_safe
-
5049 pts/1 00:00:00 mysqld
-
5054 pts/1 00:00:00 mysql
插个图片
(责任编辑:IT)
一,我的电脑里面mysql的情况 我电脑里面有二个mysql 1,一个是软件管理工具安装的mysql,如yum,apt get,pacman这样的软件,版本是mysql5.1.50 2,另一个是我手动编译安装的,安装在/usr/local/mysql下面,版本是mysql5.1.26-rc-log 如果能启动多个mysql服务的话,其实有许多好处的,你可以查看一下mysql性能的提升啊;启动了多个mysql服务后,你可以进行数据库进的数据同步,做个mysql集群什么的等等,我的初忠呢是想搞个比较新版本,又不想把以前的那个msyql给搞得不能用了,最好都能用。 二,安装配置要注意的地方 1,安装的目录不要一样,不管你是用管理软件安装的,还是手动安装的,多个mysql不要安装在同一个目录。 2,数据库文件存放的地方,不要相同,也就是my.cnf里面的datadir的的设置不要一样 3,mysql的启动端口不要一样,默认的3306,多个时候可以13306,13307等最好设置成10000以外的。 4,mysql的服务socket不要设置成一样,就是my.cnf里面socket的设置不要一样 5,mysql服务的pid文件不要设置成一样,就是my.cnf里面pid-file的设置不要一样 看一下其中一个my.cnf中mysqld的配置,
另一个my.cnf中mysqld的配置
安装配置mysql的时候,就要注意上面的几点。 三,启动mysql服务器端 1,启动一个mysql,[root@BlackGhost zhangy]# mysqld_safe --user=root --skip-grant-tables 2,启动第二个mysql,[root@BlackGhost zhangy]# /usr/local/mysql/bin/mysqld_safe --user=root --skip-grant-tables 如果你用mysql.server来启动的话,就要注意一下点,要修改一下里面的内容,修改如下:大约218行左右
如果你不修改,你用mysql.server根本无法启动,因为已经有一个mysql服务用了这个配置文件,到时肯定会提示错误的Starting MySQL.Manager of pid-file quit without updating file.[FAILED] 四,启动mysql的客户端 1,启动一个[root@BlackGhost zhangy]# mysql 如果用其他用户,加上-u 2,启动另一个[root@BlackGhost zhangy]# mysql -u root -S /tmp/mysql.sock 特别要注意这个mysql.sock如果不加的话,是启动不了的。二个msyql默认都是用一个.sock,肯定在什么地方可以改的,就根my.cnf差不多,只不过我没有找到而已
插个图片 (责任编辑:IT) |