在rhel5中安装多个mysql5
1、使用rpm正常安装
2、复制文件
(假设要安装到/my_mysql目录)
mkdir /my_mysql
mkdir /my_mysql/bin
mkdir /my_mysql/sbin
mkdir /my_mysql/data
mkdir /my_mysql/var
cp /usr/bin/mysql* /my_mysql/bin/
cp /usr/sbin/mysql* /my_mysql/sbin/
# 数据库文件
cp /var/lib/mysql/* /my_mysql/data/
rm /my_mysql/data/ib* /my_mysql/data/*.err #删除一些文件
#以后用来启动和停止服务的脚本
cp /usr/sbin/rcmysql /my_mysql/mysql-server
#配置文件
cp /usr/share/mysql/my-medium.cnf /my_mysql/my.cnf
3、修改配置文件
1)修改/my_mysql/mysql-server
·修改路径
basedir=.
datadir=./data
(大概在46行左右)
·修改锁文件
lock_file_path="$lockdir/mysql-xx"
(大概在58行左右)
·修改parse_server_arguments()方法
添加case中添加:
*=*) other_args="$other_args $arg";;
·修改my.cnf的位置
将conf=/etc/my.cnf修改为conf=./my.cnf
(大概在214行左右)
2)修改/my_mysql/my.cnf
[mysqld]
port = 3308
socket = /my_mysql/var/mysql.sock
pid-file = /my_mysql/var/mysql.pid
log-error = /my_mysql/var/mysql.log
#支持中文,不要用default-character-set=utf8
character-set-server=utf8
4、启动
/my_mysql/mysql-server start
5、注意
1)在本地用mysql客户端时,要指定在my.cnf中配置的socket
mysql --socket=/my_mysql/var/mysql.sock
2)如果启动服务时老报pid文件找不到,可能是受rhel5的安全机制的影响。如果不是很在意,可以禁止这个功能。如下:
修改文件/etc/selinux/config
将SELINUX修改成SELINUX=disabled