mysql多实例安装(笔记)
安装环境:CentOS最小化的系统 已经编译安装了mysql
先停止mysql服务 killall -9 mysql
创建一个/data目录 再创建一个端口号的文件夹(想弄几个实例就创建几个,这里的实例都用端口号命名) /data/端口号/目录下再创建一个data目录
比如说创建2个 例:mkdir -p /data/{3307,3308}/data
根据自己的环境到源码包目录里面复制2个cnf文件到3307和3308目录下
目录下面的my.cnf里面的port和socket需要修改
修改3307目录下的my.cnf
port=3307
socket=/data/3307/mysql.sock
datadir= /data/3307/data
3308目录下的cnf文件也一样修改掉
全部完成之后 用/usr/local/mysql/bin/mysql_install_db --datadir=/data/3307/data --user=mysql
/usr/local/mysql/bin/mysql_install_db --datadir=/data/3308/data --user=mysql
安装完成后把/data目录的用户和用户组权限全部给mysql用户
要登录mysql的话用 /usr/local/mysql/bin/mysql -S /data/3307/mysql.sock -uroot 指定sock套接字文件登录
mysql启动命令:
- /usr/local/mysql/bin/mysqld_safe --defaults-file=/data/3307/my.cnf 2>&1 >/dev/null &
mysql启动脚本:
- #!/bin/bash
- #多实例安装mysql的启动脚本
- Port=3307
- MysqlUser="root"
- StartMysqlCmd="/usr/local/mysql/bin/mysqld_safe"
- StopMysqlCmd="/usr/local/mysql/bin/mysqladmin"
- #启动mysql
- StartMysql()
- {
- printf "Starting Mysql.... \n"
- ${StartMysqlCmd} --defaults-file=/data/${Port}/my.cnf 2>&1 > /dev/null &
- }
- #停止Mysql
- StopMysql()
- {
- printf "Stoping Mysql.... \n"
- ${StopMysqlCmd} -u ${MysqlUser} -S /data/${port}/mysql.sock shutdown
- }
- #重启mysql
- RestartMysql()
- {
- printf "Restart Mysql.... \n"
- StopMysql
- StartMysql
- }
- case $1 in
- start)
- StartMysql
- ;;
- stop)
- StopMysql
- ;;
- restart)
- RestartMysql
- ;;
- esac
转载于:https://blog.51cto.com/zeping/1075193