美文网首页Java 核心技术MySQL
原mysql基础上配置多实例

原mysql基础上配置多实例

作者: 风中麦田守望者 | 来源:发表于2017-08-31 18:01 被阅读10次

    原来通过yum安装了mysql数据库,在此基础上有添加一个实例,实现多实例,配置 多实例主要有两种方式,一个是每个实例一个配置文件,一种是一个配置文件,通过mysqld_mulit来统一管理的,本文介绍后一种方式。

    yum安装mysql

    查看mysql是否已安装

    yum list installed mysql*
    或
    rpm -qa|grep mysql*
    

    查看有关mysql的安装包

    yum list mysql*
    

    安装mysql客户端

    yum install mysql -y
    

    安装mysql服务

    yum install mysql-server mysql-devel -y
    

    安装完成后,我们来看一下原配置文件/etc/my.cnf

    /etc/my.cnf

    此文件的部分配置我们将在mysql_multi.cnf文件中使用,当然也可以自己创建新的,完全弃用此文件的配置

    创建数据目录

    因为考虑使用默认的部分配置,所以我们只创建新增实例的数据目录

    mkdir  /var/lib/mysql_3307
    

    修改目录的属主

    chown -R mysql.mysql /var/lib/mysql_3307
    

    创建并配置mysql_multi.cnf

    [root@mio ~]# vi /etc/mysql_multi.cnf
    
    [mysqld_multi]
    mysqld = /usr/bin/mysqld_safe   #这里的命令路径通过whereis 查询,见下图
    mysqladmin = /usr/bin/mysqladmin
    #user = root      #数据库的登录帐号和密码,初始安装数据库是木有密码的,
    #password = 123456        所以我先注销,稍后设了密码再取消注释,要求两个实例帐号密码一样,不然没法关闭实例
    log = /var/log/mysqld_multi.log
    [mysqld3306]
    socket = /var/lib/mysql/mysql.sock
    datadir= /var/lib/mysql
    pid-file =/var/lib/mysql/3306.pid
    log =/var/lib/mysql/3306.log
    user = mysql
    port = 3306
    [mysqld3307]
    socket = /var/lib/mysql_3307/mysql3307.sock
    datadir=/var/lib/mysql_3307
    pid-file =/var/lib/mysql_3307/3307.pid
    log =/var/lib/mysql_3307/3307.log
    user= mysql
    port=3307
    
    image.png

    初始化实例

    刚刚只是yum 安装了数据库服务,并木有初始化,所以我们初始化两个实例

    mysql_install_db --datadir=/var/lib/mysql --user=mysql
    mysql_install_db --datadir=/var/lib/mysql_3307 --user=mysql
    

    两个“OK”表示初始化成功


    image.png

    查看、启动、关闭多实例

    查看多实例的状态

    mysqld_multi --defaults-extra-file=/etc/mysql_multi.cnf report
    
    image.png

    启动实例

    mysqld_multi --defaults-extra-file=/etc/mysql_multi.cnf  start
    
    image.png

    关闭实例

    mysqld_multi --defaults-extra-file=/etc/mysql_multi.cnf stop
    

    还可以单独启动和关闭实例

    mysqld_multi --defaults-extra-file=/etc/mysql_multi.cnf start 3306
    mysqld_multi --defaults-extra-file=/etc/mysql_multi.cnf start 3307
    mysqld_multi --defaults-extra-file=/etc/mysql_multi.cnf stop 3306
    mysqld_multi --defaults-extra-file=/etc/mysql_multi.cnf stop 3307
    

    相关文章

      网友评论

        本文标题:原mysql基础上配置多实例

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