MySQL多實例安裝

1、配置要求node

本文的演示環境 操做系統:CentOS7.二、數據庫版本:mysql5.7.24mysql

安裝4個實例linux

軟件目錄爲:/usr/local/mysql57sql

數據文件分別存放在/data一、/data二、/data三、/data4數據庫

端口分別爲330七、330八、330九、3310centos

配置文件分別爲:my3307.cnf、my3308.cnf、my3309.cnf、my3310.cnfbash

2、數據庫軟件下載ide

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

tar xvzf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

 3、環境準備spa

一、建立數據目錄操作系統

[root@gdsea data3]# tree /data*
/data1
└── 3307
    ├── data
    ├── logs
    └── tmp
/data2
└── 3308
    ├── data
    ├── logs
    └── tmp
/data3
└── 3309
    ├── data
    ├── logs
    └── tmp
/data4
└── 3310
    ├── data
    ├── logs
    └── tmp

二、刪除系統自帶數據庫

[root@gdsea data3]# rpm -qa|grep -i mariadb
mariadb-libs-5.5.44-2.el7.centos.x86_64

[root@gdsea data3]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64
[root@gdsea data3]# ps aux |grep mysql

3、安裝步驟

一、建立軟鏈接

[root@gdsea opt]# ln -s /opt/mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql57

二、建立用戶

[root@gdsea data3]# groupadd mysql
[root@gdsea data3]# useradd -r -g mysql mysql

三、建立目錄

[root@gdsea data3]# cd /usr/local/mysql57/
[root@gdsea mysql57]# mkdir mysql-files
[root@gdsea mysql57]# chmod 770 mysql-files

四、當前目錄賦予權限

[root@gdsea mysql57]# chown -R mysql.mysql .
[root@gdsea mysql57]# ll
total 40
drwxr-xr-x  2 mysql mysql  4096 Jan 11 10:17 bin
-rw-r--r--  1 mysql mysql 17987 Oct  4 13:48 COPYING
drwxr-xr-x  2 mysql mysql    52 Jan 11 10:17 docs
drwxr-xr-x  3 mysql mysql  4096 Jan 11 10:17 include
drwxr-xr-x  5 mysql mysql  4096 Jan 11 10:17 lib
drwxr-xr-x  4 mysql mysql    28 Jan 11 10:17 man
drwxrwx---  2 mysql mysql     6 Jan 11 10:49 mysql-files
-rw-r--r--  1 mysql mysql  2478 Oct  4 13:48 README
drwxr-xr-x 28 mysql mysql  4096 Jan 11 10:17 share
drwxr-xr-x  2 mysql mysql    86 Jan 11 10:17 support-files

五、數據目錄賦予權限

[root@gdsea data1]# cd /
[root@gdsea /]# chown -R mysql.mysql data1
[root@gdsea /]# chown -R mysql.mysql data2
[root@gdsea /]# chown -R mysql.mysql data3
[root@gdsea /]# chown -R mysql.mysql data4

[root@gdsea /]# ll |grep data
drwxr-xr-x   3 mysql mysql   17 Jan 11 09:52 data1
drwxr-xr-x   3 mysql mysql   17 Jan 11 09:52 data2
drwxr-xr-x   3 mysql mysql   17 Jan 11 09:52 data3
drwxr-xr-x   3 mysql mysql   17 Jan 11 09:52 data4

六、將配置文件分別cp到/data1/330七、/data2/330八、/data3/330九、/data4/3310下

#instance1
[root@gdsea 3307]# ls
data  logs  my3307.cnf  tmp

#instance2
[root@gdsea 3308]# ls
data  logs  my3308.cnf  tmp

#instance3
[root@gdsea 3309]# ls
data  logs  my3309.cnf  tmp

#instance4
[root@gdsea 3310]# ls
data  logs  my3310.cnf  tmp

七、初始化

#切記,mysqld後緊跟--defaults-file,不然沒法識別配置文件!!!

[root@gdsea mysql57]# bin/mysqld --defaults-file=/data1/3307/my3307.cnf --initialize
[root@gdsea mysql57]# bin/mysqld --defaults-file=/data2/3308/my3308.cnf --initialize
[root@gdsea mysql57]# bin/mysqld --defaults-file=/data3/3309/my3309.cnf --initialize
[root@gdsea mysql57]# bin/mysqld --defaults-file=/data4/3310/my3310.cnf --initialize

八、啓動

[root@gdsea mysql57]# bin/mysqld --defaults-file=/data1/3307/my3307.cnf &   #實例1
[root@gdsea mysql57]# bin/mysqld --defaults-file=/data2/3308/my3308.cnf &   #實例2
[root@gdsea mysql57]# bin/mysqld --defaults-file=/data3/3309/my3309.cnf &   #實例3
[root@gdsea mysql57]# bin/mysqld --defaults-file=/data4/3310/my3310.cnf &   #實例4

查看進程

root@gdsea mysql57]# ps aux|grep mysql
mysql     1384  0.1  1.3 1089648 6644 pts/1    Sl   11:23   0:12 bin/mysqld --defaults-file=/data1/3307/my3307.cnf
mysql     1756  0.1 13.0 1089648 65384 pts/1   Sl   13:42   0:03 bin/mysqld --defaults-file=/data2/3308/my3308.cnf
mysql     1848  0.1 33.0 1089648 165508 pts/1  Sl   13:55   0:02 bin/mysqld --defaults-file=/data3/3309/my3309.cnf
mysql     1976  0.1 33.5 1100092 168184 pts/1  Sl   14:10   0:01 bin/mysqld --defaults-file=/data4/3310/my3310.cnf

九、登陸並修改密碼

#首次登陸密碼在error.log中

[root@gdsea mysql57]# bin/mysql -S /tmp/mysql3307.sock -p'TGR#3Wh0OBuQ'

mysql> mysql> alter user user() identified by '123456';   #修改密碼
Query OK, 0 rows affected (0.00 sec)

擴展:兩種登陸方式

[root@gdsea mysql57]# bin/mysql -S /tmp/mysql3307.sock -p'123456'

#多實例登陸時指定配置文件
[root@gdsea mysql57]# bin/mysql --defaults-file=/data1/3307/my3307.cnf -uroot -p'123456'

十、建立用戶、遠程登陸

root@localhost:mysql3307.sock  [(none)]>create user gdsea@'%' identified by '123456';
Query OK, 0 rows affected (0.00 sec)

root@localhost:mysql3307.sock  [(none)]>grant all on xcky.* to gdsea@'%';
Query OK, 0 rows affected (0.00 sec)

[root@gdsea opt]# mysql -h192.168.1.250 -ugdsea -p123456 -P3307

gdsea@mysqldb 14:04:  [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| xcky               |
+--------------------+
2 rows in set (0.00 sec)
相關文章
相關標籤/搜索