• Mysql集群讲解(三)Mysql多实例(多个数据库)搭建


     Mysql集群讲解(三)

    Mysql多实例(多个数据库)搭建

          多实例概述:

          MySQL多实例是指安装MySQL之后,我们可以在一台Linux服务器上同时启动多个MySQL数据库(实例),不需要安装多个MySQL;

          如果是有多台Linux服务器,那么我们需要每台服务器都分别安装MySQL;

    在一台Linux服务器上启动多个MySQL数据库(实例),通过为各个数据库实例配置独立的配置文件来实现,即每个数据库实例有自己单独的配置文件;

    多实例配置:

    1、 在MySQL安装主目录下创建/data/3307, /data/3308/, /data/3309, /data/3310四个目录;

    2、执行数据库初始化,在MySQL的/usr/local/mysql-5.7.18/bin目录下执行命令:

    ./mysqld --initialize-insecure --basedir=/usr/local/mysql-5.7.18 --datadir=/usr/local/mysql-5.7.18/data/3307 --user=mysql

    ./mysqld --initialize-insecure --basedir=/usr/local/mysql-5.7.18 --datadir=/usr/local/mysql-5.7.18/data/3308 --user=mysql

    ./mysqld --initialize-insecure --basedir=/usr/local/mysql-5.7.18 --datadir=/usr/local/mysql-5.7.18/data/3309 --user=mysql

    ./mysqld --initialize-insecure --basedir=/usr/local/mysql-5.7.18 --datadir=/usr/local/mysql-5.7.18/data/3310 --user=mysql

    其中 initialize-insecure 表示不生成MySQL数据库root用户的随机密码,即root密码为空;

    3、在/data/3307, /data/3308/, /data/3309, /data/3310 四个目录下分别创建一个my.cnf文件;

    4、配置四个MySQL数据库服务的my.cnf文件

    这里之举个例子:其他3308 3309 3310 中只需要修改端口号即可

    [client]

    port        = 3307

    socket      = /usr/local/mysql-5.7.18/data/3307/mysql.sock

    default-character-set=utf8

     

    [mysqld]

    port    = 3307

    socket  = /usr/local/mysql-5.7.18/data/3307/mysql.sock

    datadir = /usr/local/mysql-5.7.18/data/3307

    log-error = /usr/local/mysql-5.7.18/data/3307/error.log

    pid-file = /usr/local/mysql-5.7.18/data/3307/mysql.pid

     

    character-set-server=utf8

    lower_case_table_names=1

    autocommit = 1

    多实例启动:

            切换到/usr/local/mysql-5.7.18/bin目录下,使用 msyqld_safe 命令指定配置文件并启动MySQL服务:

       ./mysqld_safe --defaults-file=/usr/local/mysql-5.7.18/data/3307/my.cnf &

       ./mysqld_safe --defaults-file=/usr/local/mysql-5.7.18/data/3308/my.cnf &

    ./mysqld_safe --defaults-file=/usr/local/mysql-5.7.18/data/3309/my.cnf &

    ./mysqld_safe --defaults-file=/usr/local/mysql-5.7.18/data/3310/my.cnf &

    其中 --defaults-file 是指定配置文件,& 符合表示后台启动;

          启动后配置:(3308 3309 3310 别忘记修改 密码和远程权限)

                  1、登录进入mysql,在mysql-5.7.18/bin目录下执行命令:

    ./mysql -uroot -p -S /usr/local/mysql-5.7.18/data/3307/mysql.sock

    其中 -p 是指定密码,如果没有密码则可以不写 -p,-S是指定sock文件,mysql.sock文件是服务器与本机客户端进行通信的ip与端口文件;或者使用用端口、主机登录 ./mysql -uroot -p -P3307 -h127.0.0.1 登录进入MySQL

    2、修改mysql的密码,执行:

    alter user 'root'@'localhost' identified by '123456';

    (其中123456是我们设置的密码)

    3、授权远程访问,执行命令:(这样远程客户端才能访问)

    grant all privileges on *.* to root@'%' identified by '123456';

    其中*.* 的第一个*表示所有数据库名,第二个*表示所有的数据库表;

    root@'%' 中的root表示用户名,%表示ip地址,%也可以指定具体的ip地址,比如root@localhost,root@192.168.10.129

    4、执行以下如下命令刷新权限:

    flush privileges;

    多实例关闭:

    切换到/usr/local/mysql-5.7.18/bin目录下,使用 mysqladmin 命令 shutdown

    ./mysqladmin -uroot -p -S /usr/local/mysql-5.7.18/data/3307/mysql.sock shutdown

    或者:./mysqladmin -uroot -p -P3307 -h127.0.0.1 shutdown

    如果已经进入到了MySQL的命令行,可以直接执行 shutdown;

    退出MySQL命令行,执行: exit

  • 相关阅读:
    一些特效,不断更新
    关于cin输入字符串
    开辟二维数组
    c++ 有关webBrowser控件的一些整理
    WebBrowser 常用方法
    WebRequest和WebBrowser同时登陆,使用同一个sessionID
    delphi 编写的com 对象 用php调用的实例
    Two math problems in http://projecteureka.org sumitted by me.
    delphi dll 实例 与 dll窗体实例
    SSH酒店点菜系统笔记
  • 原文地址:https://www.cnblogs.com/liudongdong666666/p/7816628.html
Copyright © 2020-2023  润新知