欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Linux下启动多个mysql服务器例子

程序员文章站 2024-02-29 10:41:58
1、  创建多个mysql database目录 复制代码 代码如下:mysql_install_db  --datadir=/data/mysql_...

1、  创建多个mysql database目录

复制代码 代码如下:
mysql_install_db  --datadir=/data/mysql_3307

2、  设置database目录权限
复制代码 代码如下:

chown –r mysql /data

3、  拷贝、设置my.cnf
复制代码 代码如下:

cp  xxx/my.cnf /data/mysql_3307/my.cnf

添加my.cnf
复制代码 代码如下:

log-error = /data/mysql_3307/localhost.localdomain.err
pid-file = /data/mysql_3307/localhost.localdomain.pid

4、  添加启动脚本:
复制代码 代码如下:

#!/bin/ti
rundir=`pwd`
datadir=$rundir
cnf=$rundir"/my.cnf"
 
echo "server path : $rundir"
echo "data path : $datadir"
echo "cnf : $cnf"
 
/usr/local/mysql/bin/mysqld_safe /
--defaults-file="$cnf" /
--pid-file="$rundir"/mysql.pid /
--datadir="$datadir" /
--socket="$rundir"/mysql.sock /
&

5、ok,chmod a+x my.cnf,./my.cnf,启动

Linux下启动多个mysql服务器例子

6、ok,启动正常,如上图所示。

可能遇到的问题:

1)/usr/local/mysql/libexec/mysqld: file ‘./mysql-bin.index' not found (errcode: 13)

原因是没有执行第2步,给数据库数据文件夹设置用户组权限;

2)can't find messagefile ‘/data/mysql_3307/share/mysql/english/errmsg.sys'

需要在my.cnf中配置语言的路径,添加如下:language = /usr/local/mysql/share/mysql/english

3)mysql 连接不上mysql server

注意mysql 指明配置文件的路径,例如mysql –defaults-file=/data/mysql_3307/my.cnf 。在my.cnf文件中需要检查client.socket的文件是否正确。