mysql 多實例安裝--centos7

 安裝與配置mysql多例

  1、  解壓mysql

    a、解壓mysq:tar -zxvf mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz

    b、移動mysql:sudo mv mysql-5.7.19-linux-glibc2.12-x86_64 /usr/local/mysql

  2、  創建mysql實例用戶及文件

    a、sudo useradd mysql -r -s /sbin/nologin          

    b、sudo mkdir -p /usr/local/mysql/mysql_files          //數據導入導出目錄

    c、 創建多實例數據目錄:sudo mkdir -p /data/mysql_data{1..3}

    d、   修改mysql目錄的屬組及用戶:sudo chown root.mysql -R /usr/local/mysql

    e、   修改專用目錄的屬主及屬組:sudo chown mysql.mysql -R /usr/local/mysql/mysql_files  /data/mysql_data{1..3}

  3、  配置Mysql的配置文件/etc/my.cnf,內容如下:

    [mysqld_multi]

    mysqld = /usr/local/mysql/bin/mysqld

    mysqladmin = /usr/local/mysql/bin/mysqladmin

    log = /tmp/mysql_multi.log

 

    [mysqld1]

    datadir = /data/mysql_data1       #設置數據目錄

    socket = /tmp/mysql.sock1         #設置sock文件存放路徑

    port = 3306                      #設置監聽開放端口 

    user = mysql                           #設置運行用戶

    performance_schema = off          #關閉監控

    innodb_buffer_pool_size = 32M         #設置innodb 緩存大小

    bind_address = 0.0.0.0                  #設置監聽IP地址

    skip-name-resolve = 0                 #關閉DNS反向解析

 

    [mysqld2]

    datadir = /data/mysql_data2

    socket = /tmp/mysql.sock2

    port = 3307

    user = mysql

    performance_schema = off

    innodb_buffer_pool_size = 32M

    bind_address = 0.0.0.0

    skip-name-resolve = 0

 

    [mysqld3]

    datadir = /data/mysql_data3

    socket = /tmp/mysql.sock3

    port = 3308

    user = mysql

    performance_schema = off

    innodb_buffer_pool_size = 32M

    bind_address = 0.0.0.0

    skip-name-resolve = 0

  4、  初始化各個實例:初始化完後會在日誌中生成密碼,記得保存,一會要用。

    a、sudo /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql_data1

    b、   /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql_data2

    c、 /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql_data3

  

  5、  開啓各實例的SSL連接

    a、sudo /usr/local/mysql/bin/mysql_ssl_rsa_setup --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql_data1

    b、   sudo /usr/local/mysql/bin/mysql_ssl_rsa_setup --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql_data2

    c、 sudo /usr/local/mysql/bin/mysql_ssl_rsa_setup --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql_data3

  

  6、  複製多實例腳本到服務管理目錄下

    a、sudo cp /usr/local/mysql/support-files/mysqld_multi.server /etc/init.d/mysqld_multi

  7、  給予腳本可執行權限:sudo chmod +x /etc/init.d/mysqld_multi

  8、  加入service服務管理: sudo chkconfig --add mysqld_multi

  9、  添加環境變量

    a、在文件最後面添加內容:sudo vim /etc/profile

      ## SETUP MYSQL’S PATH

      export MYSQL_HOME=/usr/local/mysql

      export PATH=${MYSQL_HOME}/bin:$PATH

    b、   使修改的配置文件生效:source /etc/profile

五、 測試實例

  1、  查看多個實例狀態:mysqld_multi report

   

  2、  啓動各個實例 : sudo mysqld_multi start

  3、  查看實例的監聽端口:sudo ss -tulpn|grep mysqld

   

  4、  連接實例1:

    a、sudo mysql -S /tmp/mysql.sock1 -p前面生成的密碼

    b、   進去後修改root密碼: set password=password('123456');

    c、 使修改生效:flush privileges;

   

  5、  另外兩個實例的操作方法與實例1一致,不再贅述。

  6、  允許遠程連接mysql:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

FLUSH PRIVILEGES; 

其中,root 是用戶名,% 表示所有人都可以訪問,password是密碼

至此,centos7安裝配置mysql5.7成功
--------------------- 
作者:可可keketrtr 
來源:CSDN 
原文:https://blog.csdn.net/keketrtr/article/details/80535961 
版權聲明:本文爲博主原創文章,轉載請附上博文鏈接!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章