美文网首页
【MySQL】之MySQL5.7版本数据库多实例安装部署

【MySQL】之MySQL5.7版本数据库多实例安装部署

作者: 云之图 | 来源:发表于2023-07-03 09:30 被阅读0次

    【MySQL】之MySQL5.7版本数据库多实例安装部署

    项目需求

    1、多实例数据库环境规划
    2、多实例数据库初始
    3、启动数据库
    4、查看多实例数据库进程和监听端口
    5、实例数据库关闭和启动
    

    项目需求:

    深入学习研究MySQL数据库集群时,因环境原因,没有更多的物理服务器去搭建部署集群环境,可以选择使用多实例方式部署数据库,完成集群环境的部署,实现一台数据库可更好的玩转数据库集群。如MySQL的主从复制和集群环境。


    1、多实例数据库环境规划

    1.1、多实例端口、数据目录和配置文件。

    image.png
    物理服务器地址 多实例 172.21.209.125  
    端口  数据目录    配置文件
    3306    /data/mysql/3306/data   /data/mysql/conf/my.3306.cnf
    3307    /data/mysql/3307/data   /data/mysql/conf/my.3307.cnf
    3308    /data/mysql/3308/data   /data/mysql/conf/my.3308.cnf
    3309    /data/mysql/3309/data   /data/mysql/conf/my.3309.cnf
    3310    /data/mysql/3310/data   /data/mysql/conf/my.3310.cnf
    
    注:本次创建5个多实例用户后续环境的集群搭建部署。
    

    1.2、创建多实例数据目录

    [root@mysql03 data]# mkdir -p /data/mysql/330{6..9}
    [root@mysql03 data]# mkdir -p /data/mysql/{3310,conf}
    
    

    1.3、创建多实例配置文件

    3306配置文件
    cat > /data/mysql/conf/my.3306.cnf << EOF
    [mysqld]
    user=mysql
    basedir=/usr/local/mysql
    datadir=/data/mysql/3306/data
    socket=/data/mysql/3306/data/mysql.sock
    port=3306
    
    [mysql]
    default-character-set=utf8 
    collation-server = utf8_unicode_ci 
    init-connect='SET NAMES utf8'
    character-set-server = utf8 
    socket=/data/mysql/3306/data/mysql.sock
    
    [client]  
    default-character-set=utf8 
    
    EOF
    
    3307、3308、3309、3310实例配置文件,通过复制拷贝3306的配置文件并修改对应端口即可。
    [root@mysql03 conf]# cp my.3306.cnf my.3307.cnf 
    [root@mysql03 conf]# cp my.3306.cnf my.3308.cnf 
    [root@mysql03 conf]# cp my.3306.cnf my.3309.cnf 
    [root@mysql03 conf]# cp my.3306.cnf my.3310.cnf 
    
    修改对应端口
    [root@mysql03 conf]# sed -i 's/3306/3307/g' my.3307.cnf 
    [root@mysql03 conf]# sed -i 's/3306/3308/g' my.3308.cnf 
    [root@mysql03 conf]# sed -i 's/3306/3309/g' my.3309.cnf 
    [root@mysql03 conf]# sed -i 's/3306/3310/g' my.3310.cnf 
    

    2、多实例数据库初始化

    数据初始化
    [root@mysql03 conf]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/3306/data
    [root@mysql03 conf]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/3307/data
    [root@mysql03 conf]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/3308/data
    [root@mysql03 conf]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/3309/data
    [root@mysql03 conf]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/3310/data
    

    3、启动数据库

    根据配置文件,后台启动多实例数据库
    [root@mysql03 conf]# mysqld --defaults-file=/data/mysql/conf/my.3306.cnf --user=root &
    [root@mysql03 conf]# mysqld --defaults-file=/data/mysql/conf/my.3307.cnf --user=root &
    [root@mysql03 conf]# mysqld --defaults-file=/data/mysql/conf/my.3308.cnf --user=root &
    [root@mysql03 conf]# mysqld --defaults-file=/data/mysql/conf/my.3309.cnf --user=root &
    [root@mysql03 conf]# mysqld --defaults-file=/data/mysql/conf/my.3310.cnf --user=root &
    

    4、查看多实例数据库进程和监听端口

    多实例目录
    [root@mysql03 mysql]# pwd
    /data/mysql
    [root@mysql03 mysql]# ll
    total 24
    drwxr-xr-x 3 mysql mysql 4096 Oct 21 15:45 3306
    drwxr-xr-x 3 root  root  4096 Oct 21 16:32 3307
    drwxr-xr-x 3 root  root  4096 Oct 21 16:38 3308
    drwxr-xr-x 3 root  root  4096 Oct 21 16:39 3309
    drwxr-xr-x 3 root  root  4096 Oct 22 10:23 3310
    drwxr-xr-x 2 root  root  4096 Oct 22 10:23 conf
    
    检查进程
    [root@mysql03 mysql]# ps -ef|grep mysql
    polkitd  12085 12068  0 Oct21 ?        00:00:42 mysqld
    mysql    12600 10814  0 Oct21 pts/2    00:00:34 mysqld --defaults-file=/data/mysql/conf/my.3307.cnf --user=root
    mysql    12900 11290  0 Oct21 pts/3    00:00:33 mysqld --defaults-file=/data/mysql/conf/my.3308.cnf --user=root
    mysql    12930 11290  0 Oct21 pts/3    00:00:33 mysqld --defaults-file=/data/mysql/conf/my.3309.cnf --user=root
    mysql    15358 11290  0 10:24 pts/3    00:00:02 mysqld --defaults-file=/data/mysql/conf/my.3310.cnf --user=root
    mysql    15412 11290  0 10:33 pts/3    00:00:01 mysqld --defaults-file=/data/mysql/conf/my.3306.cnf --user=root
    root     15556 15495  0 11:23 pts/4    00:00:00 grep --color=auto mysql
    
    监听端口
    [root@mysql03 mysql]# netstat  -lntup|grep 33
    tcp6       0      0 :::3307                 :::*                    LISTEN      12600/mysqld        
    tcp6       0      0 :::3308                 :::*                    LISTEN      12900/mysqld        
    tcp6       0      0 :::3309                 :::*                    LISTEN      12930/mysqld        
    tcp6       0      0 :::3310                 :::*                    LISTEN      15358/mysqld        
    tcp6       0      0 :::3306                 :::*                    LISTEN      15412/mysqld  
    

    5、实例数据库关闭和启动

    多实例关闭服务
    [root@mysql03 mysql]# mysqladmin  -uroot -p123456 -S  /data/mysql/3306/data/mysql.sock   shutdown
    [root@mysql03 mysql]# mysqladmin  -uroot -p123456 -S  /data/mysql/3307/data/mysql.sock   shutdown
    [root@mysql03 mysql]# mysqladmin  -uroot -p123456 -S  /data/mysql/3308/data/mysql.sock   shutdown
    [root@mysql03 mysql]# mysqladmin  -uroot -p123456 -S  /data/mysql/3309/data/mysql.sock   shutdown
    [root@mysql03 mysql]# mysqladmin  -uroot -p123456 -S  /data/mysql/3310/data/mysql.sock   shutdown
    
    跳过权限表后台启动多实例
    [root@mysql03 mysql]# mysqld --defaults-file=/data/mysql/conf/my.3306.cnf --user=root --skip-grant-tables &
    [root@mysql03 mysql]# mysqld --defaults-file=/data/mysql/conf/my.3307.cnf --user=root --skip-grant-tables &
    [root@mysql03 mysql]# mysqld --defaults-file=/data/mysql/conf/my.3308.cnf --user=root --skip-grant-tables &
    [root@mysql03 mysql]# mysqld --defaults-file=/data/mysql/conf/my.3309.cnf --user=root --skip-grant-tables &
    [root@mysql03 mysql]# mysqld --defaults-file=/data/mysql/conf/my.3310.cnf --user=root --skip-grant-tables &
    

    至此,多实例数据库部署完成。

    相关文章

      网友评论

          本文标题:【MySQL】之MySQL5.7版本数据库多实例安装部署

          本文链接:https://www.haomeiwen.com/subject/thxzydtx.html