启动多个mysql 实例

 

1、  创建多个mysql database目录

a)         Mysql_install_db  --datadir=/data/mysql_3307

2、  设置database目录权限

a)         Chown –R mysql /data

b)         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/sh

 

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,启动

启动多个mysql 实例_第1张图片

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

 

可能遇到的问题:

1/usr/local/mysql/libexec/mysqld: File './mysql-bin.index' not found (Errcode: 13)

 

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

2Can't find messagefile '/data/mysql_3307/share/mysql/english/errmsg.sys'

 

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

3mysql 连接不上mysql server

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

 

你可能感兴趣的:(mysql,数据库,server,脚本,database,Path)