mysql 多实例部署

Centos7.6 部署3个Mariadb 实例

[[email protected] ~]# yum install mariadb-server -y

# 创建对应的目录文件
[[email protected] ~]# mkdir /mysql/{3306,3307,3308}/{data,etc,socket,log,bin,pid} -p

chown -R mysql.mysql /mysql

# 初始化数据库文件
[[email protected] ~]# mysql_install_db --datadir=/mysql/3306/data/ --user=mysql
[[email protected] ~]# mysql_install_db --datadir=/mysql/3307/data/ --user=mysql
[[email protected] ~]# mysql_install_db --datadir=/mysql/3308/data/ --user=mysql

# 创建对应配置文件
[[email protected] ~]# cp /etc/my.cnf /mysql/3306/etc
# 修改对应的配置文件
[mysqld]
port=3306
datadir=/mysql/3306/data
socket=/mysql/3306/socket/mysql.sock
symbolic-links=0

[mysqld_safe]
log-error=/mysql/3306/log/mariadb.log
pid-file=/mysql/3306/pid/mariadb.pid

# 另外的2个实例调整对应的端口即可

# 准备启动脚本 另外的实例修改对应的端口即可
[[email protected] ~]#  vim /mysql/3306/bin/mysqld
#!/bin/bash
#chkconfig: 345 80 2
port=3306
mysql_user="root"
mysql_pwd=""
cmd_path="/usr/bin"
mysql_basedir="/mysql"
mysql_sock="${mysql_basedir}/${port}/socket/mysql.sock"

function_start_mysql()
{
    if [ ! -e "$mysql_sock" ];then
      printf "Starting MySQL...\n"
      ${cmd_path}/mysqld_safe --defaults-file=${mysql_basedir}/${port}/etc/my.cnf  &> /dev/null  &
    else
      printf "MySQL is running...\n"
      exit
    fi
}

function_stop_mysql()
{
    if [ ! -e "$mysql_sock" ];then
       printf "MySQL is stopped...\n"
       exit
    else
       printf "Stoping MySQL...\n"
       ${cmd_path}/mysqladmin -u ${mysql_user} -p${mysql_pwd} -S ${mysql_sock} shutdown
   fi
}

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: ${mysql_basedir}/${port}/bin/mysqld {start|stop|restart}\n"
esac

# 启动服务
[[email protected] ~]# /mysql/3306/bin/mysqld start
Starting MySQL...
[[email protected] ~]# /mysql/3307/bin/mysqld start
Starting MySQL...
[[email protected] ~]# /mysql/3308/bin/mysqld start
Starting MySQL...

# 连接测试
mysql -S /mysql/3308/socket/mysql.sock -e ‘select version()‘
+----------------+
| version()      |
+----------------+
| 5.5.60-MariaDB |
+----------------+

# 关闭数据库
[[email protected] ~]# /mysql/3306/bin/mysqld stop
Stoping MySQL...
Enter password:

原文地址:https://blog.51cto.com/1012682/2386478

时间: 2024-10-30 02:01:35

mysql 多实例部署的相关文章

MySQL多实例部署

mysql的多实例有两种方式可以实现,两种方式各有利弊.第一种是使用多个配置文件启动不同的进程来实现多实例,这种方式的优势逻辑简单,配置简单,缺点是管理起来不太方便.第二种是通过官方自带的mysqld_multi使用单独的配置文件来实现多实例,这种方式定制每个实例的配置不太方面,优点是管理起来很方便,集中管理 第一种使用多个配置文件启动多个进行 1.安装编译好数据库 2.进行数据库初始化 /usr/local/mysql_3306/bin/mysql_install_db --basedir=/

MySQL单机多实例部署

一.MySQL多实例部署 版本:5.7.18 1.软件安装 # tar xf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /usr/local # cd /usr/local # chown -R root.root mysql-5.7.18-linux-glibc2.5-x86_64 # ln -sv mysql-5.7.18-linux-glibc2.5-x86_64 mysql5.7.18 # mkdir /data/{mydata3307,m

mysql 5.5多实例部署

mysql5.5数据库多实例部署,我们可以分以下几个步骤来完成. 1. mysql多实例的原理 2. mysql多实例的特点 3. mysql多实例应用场景 4. mysql5.5多实例部署方法 一.mysql多实例的原理 mysql多实例,简单的说,就是在一台服务器上开启多个不同的mysql服务端口(如3306,3307),运行多个mysql服务进程.这些服务进程通过不同的socket监听不同的服务端口,来提供各自的服务. 这些mysql实例共用一套mysql安装程序,使用不同的my.cnf配

MySQL单机多实例部署详解

一.mysql多实例的原理 mysql多实例,简单的说,就是在一台服务器上开启多个不同的mysql服务端口(如3306,3307),运行多个mysql服务进程.这些服务进程通过不同的socket监听不同的服务端口,来提供各自的服务. 这些mysql实例共用一套mysql安装程序,使用不同的my.cnf配置文件.启动程序.数据文件.在提供服务时,mysql多实例在逻辑上看来是各自独立的,各个实例之间根据配置文件的设定值,来取得服务器的相关硬件资源. 二.mysql多实例的特点 2.1 有效的利用服

MySQL2种多实例部署方式总结

多实例在生产很常用,一方面节约了成本,一方面可以充分利用资源,提高数据处理速度(服务器性能够好),之前请教过贺磊dba一点MySQL多实例一些问题,部署安装比较简单,这里总结一下MySQL多实例部署的两种方式: 注意事项 单独管理 集中管理(mysqld_multi) 配置文件 使用不同的配置文件 共用一个配置文件 端口 不可冲突 不可冲突 basedir 可单独目录/可相同目录 可单独目录/可相同目录 datadir 不相同 不相同 pid文件 不可冲突/独立访问 不可冲突/独立访问 sock

烂泥:mysql5.5多实例部署

本文由秀依林枫提供友情赞助,首发于烂泥行天下. mysql5.5数据库多实例部署,我们可以分以下几个步骤来完成. 1. mysql多实例的原理 2. mysql多实例的特点 3. mysql多实例应用场景 4. mysql5.5多实例部署方法 一.mysql多实例的原理 mysql多实例,简单的说,就是在一台服务器上开启多个不同的mysql服务端口(如3306,3307),运行多个mysql服务进程.这些服务进程通过不同的socket监听不同的服务端口,来提供各自的服务. 这些mysql实例共用

mysql5.5多实例部署

mysql5.5数据库多实例部署,我们可以分以下几个步骤来完成. 1. mysql多实例的原理 2. mysql多实例的特点 3. mysql多实例应用场景 4. mysql5.5多实例部署方法 一.mysql多实例的原理 mysql多实例,简单的说,就是在一台服务器上开启多个不同的mysql服务端口(如3306,3307),运行多个mysql服务进程.这些服务进程通过不同的socket监听不同的服务端口,来提供各自的服务. 这些mysql实例共用一套mysql安装程序,使用不同的my.cnf配

linux运维、架构之路-MySQL多实例

一.MySQL多实例介绍            一台服务器上开启多个不同的服务端口(3306,33307,3308),运行多个MySQL服务进程,共用一套MySQL安装程序,多实例MySQL在逻辑上看是各自独立的 1.多实例主从复制原理图 2.优点 ①有效利用服务器资源②节约服务器资源③资源互相抢占问题,其中一个实例并发很高或者慢查询,其它实例也受影响 3.应用场景 ①公司资金紧缺②并发访问不是特别大的业务③门户网站应用MySQL多实例场景,一般是从库 4.MySQL多实例常见配置方案 ①多配置

mysql-5.6.36单/多实例部署

mysql多实例部署 实验环境 mysql-1:10.0.0.101?mysql-2:10.0.0.102?centos 6.9 mysql的源码安装 [root@mysql-1 3306]# cat /etc/redhat-release CentOS release 6.9 (Final)关闭iptables和selinux安装mysql-5.6.36##安装前期准备#1.创建安装目录及软件包下载目录 [ -e /tools ]||mkdir -p /tools [ -e /applicat