一个服务器启动2套mysql_一台服务器上启动两个mysql实例

一台服务器上启动两个mysql实例

操作环境:centos6.8

有时由于服务器硬件资源紧张,而又需要新增mysql服务。这时我们可以采取在一台服务器上部署两个mysql实例,来解决。

1、创建新的mysql实例数据存储目录:

mkdir -p /data/mysql_3307

2、把my.cnf配置文件复制一份,开几个端口要复制几份。

cp /etc/my.cnf /data/mysql_3307/my.cnf

3、修改/data/mysql_3307/my.cnf文件,把默认的3306端口改成 3307,根据实际情况修改socket,basedir,datadir 。

[client]

port = 3307

socket = /tmp/mysql_3307.sock

default-character-set = utf8

The MySQL server

[mysqld]

port = 3307

user = mysql

socket = /tmp/mysql_3307.sock

basedir = /usr

datadir = /data/mysql_3307

character-set-server = utf8

log-error = /data/mysql_3307/error.log

pid-file = /data/mysql_3307/localhost.localdomain.pid

4、初始化数据库:

mysql_install_db –basedir=/usr –datadir=/data/mysql_3307 –user=mysql

mysql是yum安装的,所以basedir=/usr就可以,它会自动在/usr下找mysql的安装目录。

如果是源码包编译安装的mysql,假如安装路径是在/usr/local/mysql

cd /usr/local/mysql/scripts/

./mysql_install_db –basedir=/usr/local/mysql –datadir=/data/mysql_3307 –user=mysql

5、启动mysql,要指定.cnf文件启动

mysqld_safe –defaults-file=/data/mysql_3307/my.cnf –user=mysql &

6、停止MYSQL,需要指定对应的sock文件。

mysqladmin -uroot -S /tmp/mysql_3307.sock shutdown

7、登陆3307端口的mysql

mysql -S /tmp/mysql_3307.sock -P 3307

启动、停止、重启mysql脚本:

#!/bin/bash

#mysql 停止\启动\重启脚本 此脚本只针对yum安装的mysql,而且已经为root设置过密码。

#init

port=3307

mysql_user=”root”

mysql_pwd=”123456″

CmdPath=”/usr/bin”

mysqlsock=”/tmp/mysql${port}.sock”

#startup function

function_start_mysql()

{

if [ ! -e “$mysql_sock” ];then

printf “Starting MySQL…\n”

${CmdPath}/mysqld_safe –defaults-file=/data/mysql_3307/my.cnf –user=mysql 2>&1 >/dev/null &

else

printf “MySQL is running…\n”

exit

fi

}

#stop function

function_stop_mysql()

{

if [ ! -e “$mysql_sock” ];then

printf “MySQL is stopped…\n”

exit

else

printf “Stoping MySQL…\n”

${CmdPath}/mysqladmin -u ${mysql_user} -p${mysql_pwd} -S ${mysql_sock} shutdown

fi

}

#restart function

function_restart_mysql()

{

printf “Restarting MySQL…\n”

function_stop_mysql

sleep 2

function_start_mysql

}

case $1 in

start)

function_start_mysql

;;

stop)

function_stop_mysql

;;

restart)

function_restart_mysql

;;

*)

printf “Usage: /data/mysql_3307 {start|stop|restart}\n”

esac

本文转自 goldfishe 51CTO博客,原文链接:http://blog.51cto.com/jack88/2051320

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值