一台服务器两个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" mysql_sock="/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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一台服务器上安装并启动多个 MySQL 服务是可行的,可以按照以下步骤操作: 1. 安装 MySQL 按照正常的方式安装 MySQL,可以使用不同的安装方式,比如通过 apt-get 或 yum 安装。 2. 复制 MySQL 配置文件 MySQL 的配置文件默认路径为 `/etc/mysql/my.cnf`,复制该文件并重命名,比如: ``` sudo cp /etc/mysql/my.cnf /etc/mysql/my1.cnf sudo cp /etc/mysql/my.cnf /etc/mysql/my2.cnf ``` 这样就得到了两个新的配置文件 `my1.cnf` 和 `my2.cnf`。 3. 修改配置文件 打开新的配置文件,修改以下内容: - datadir:指定新的数据目录,比如 `/var/lib/mysql1` 和 `/var/lib/mysql2`。 - socket:指定新的 socket 文件位置,比如 `/var/run/mysqld/mysqld1.sock` 和 `/var/run/mysqld/mysqld2.sock`。 - port:指定新的端口号,比如 3307 和 3308。 - pid-file:指定新的 PID 文件位置,比如 `/var/run/mysqld/mysqld1.pid` 和 `/var/run/mysqld/mysqld2.pid`。 4. 复制数据目录 使用以下命令复制 MySQL 的数据目录: ``` sudo cp -R /var/lib/mysql /var/lib/mysql1 sudo cp -R /var/lib/mysql /var/lib/mysql2 ``` 5. 修改数据目录权限 使用以下命令修改数据目录的权限: ``` sudo chown -R mysql:mysql /var/lib/mysql1 sudo chown -R mysql:mysql /var/lib/mysql2 ``` 6. 启动 MySQL 使用以下命令启动 MySQL: ``` sudo mysqld_safe --defaults-file=/etc/mysql/my1.cnf & sudo mysqld_safe --defaults-file=/etc/mysql/my2.cnf & ``` 这样就启动两个 MySQL 实例,分别使用不同的配置文件、数据目录、PID 文件和端口号。 7. 验证 MySQL 是否启动成功 可以使用以下命令查看 MySQL 是否启动成功: ``` sudo netstat -tlnp | grep mysql ``` 如果成功启动,会显示两个 MySQL 实例的端口号和 PID。 以上就是在一台服务器上安装并启动多个 MySQL 服务的完整步骤。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值