系统中原有 Mysql4 ,但是需要使用 Mysql5 的一些新特性,但是 Mysql4 又不能够删除,所以需要同时安装两个版本的 Mysql。
为此,用测试机进行了实验,安装下面两个版本的 Mysql。
mysql-standard-4.1.15-pc-linux-gnu-i686-glibc23.tar.gz
mysql-5.0.86-linux-i686.tar.gz
步骤如下:
1、首先安装 Mysql4
tar –xvzf mysql-standard-4.1.15-pc-linux-gnu-i686-glibc23.tar.gz
cp -rf mysql-standard-4.1.15-pc-linux-gnu-i686-glibc23.tar.gz /usr/local/mysql4
groupadd mysql4
useradd -n mysql4 -c "" -g mysql4 -d /nonexistent -s /usr/sbin/nologin
cd /usr/local/mysql4
chown –R mysql4
chgrp –R mysql4
./scripts/mysql_install_db --user=mysql4
chown –R root .
chown –R mysql4 data
./bin/mysqld_safe --user=mysql4 &
这样,mysql4 就安装完成了,可以通过 ./bin/mysql –uroot 进入查看,并且通过 status 可以看到数据库的状态:
mysql> status
--------------
./bin/mysql Ver 14.7 Distrib 4.1.15, for pc-linux-gnu (i686) using readline 4.3Connection id: 2
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 4.1.15-standard
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: latin1
Db characterset: latin1
Client characterset: latin1
Conn. characterset: latin1
UNIX socket: /tmp/mysql.sock
Uptime: 2 min 32 secThreads: 1 Questions: 5 Slow queries: 0 Opens: 11 Flush tables: 1 Open tables: 5 Queries per second avg: 0.033
--------------如果需要加入到系统自启动中,则可以进行如下的操作。
cp support-files/mysql.server /etc/rc.d/init.d/mysql4.server
接下来需要对这个文件中的一些变量进行修改
basedir=/usr/local/mysql4
datadir=/usr/local/mysql4/data
pid_file=/var/run/mysql4/mysql4.pid
拷贝一个配置文件到 data 目录下 cp /usr/local/mysql4/support-files/my-xxxx.cnf /usr/local/mysql4/data/my.cnf
修改 my.cnf 文件
[mysqld]
user = mysql4
port = 3306
socket = /tmp/mysql4.sock
最后,建立运行时的目录
mkdir /var/run/mysql4
chown -R mysql4:mysql4 /var/run/mysql4/
ln -s /etc/init.d/mysql4.server /etc/rc3.d/S90mysql4
ln -s /etc/init.d/mysql4.server /etc/rc3.d/K91mysql4
这样,系统启动后 mysql4 的服务就会自动起来了。
2、安装 Mysql 5
mysql5 的安装和 mysql4 差不多,只是 mysql4 的部分修改为 mysql5。
groupadd mysql5
useradd –n mysql5 –c “” –g mysql5 –d /noexistent –s /usr/sbin/nologin
chown –R mysql5 .
chgrp –R mysql5 .
./scripts/mysql_install_db --user=mysql5
chown –R root .
chown –R mysql5 data
cp support-files/mysql.server /etc/rc.d/init.d/mysql5.server
修改文件中的变量
basedir=/usr/local/mysql5
datadir=/usr/local/mysql5/data
pid_file=/var/run/mysql5/mysql5.pid
server_pid_file=/var/run/mysql5/mysql5.pid
user=mysql5
拷贝一个配置文件 cp support-files/my-medium.cnf my.cnf
修改配置文件中的变量
user = mysql5
port = 3307
socket = /tmp/mysql5.sock
最后建立文件夹
mkdir /var/run/mysql5
chown -R mysql5:mysql5 /var/run/mysql5/
启动服务 /etc/rc.d/init.d/mysql5.server start
查看服务的状态
[root@fltrpsrv2 mysql5]# /usr/local/mysql5/bin/mysql -uroot -S/tmp/mysql5.sock
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.0.86-log MySQL Community Server (GPL)Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> status
--------------
/usr/local/mysql5/bin/mysql Ver 14.12 Distrib 5.0.86, for pc-linux-gnu (i686) using readline 5.1Connection id: 1
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.0.86-log MySQL Community Server (GPL)
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: latin1
Db characterset: latin1
Client characterset: latin1
Conn. characterset: latin1
UNIX socket: /tmp/mysql5.sock
Uptime: 28 secThreads: 1 Questions: 4 Slow queries: 0 Opens: 11 Flush tables: 1 Open tables: 6 Queries per second avg: 0.143
--------------
可以看到 mysql5 已经安装成功了
加入系统自启动
ln -s /etc/init.d/mysql5.server /etc/rc3.d/K91mysql5
参考资料:
1、Install Mysql4 and Mysql5 on a single FreeBSD 6.2 Server
2、Install Mysql from tar.gz Packages on Other Unix-Like Systems