Linux安裝mysql5.7一主二備&【mycat】使用

 

【一】、首先安裝多個數據庫服務【192.168.1.114】【192.168.1.113】【192.168.1.106】

====================================安裝mysql===============================================

解壓

[1]->tar -zxvf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz -C /usr/local/

[2]->cd /usr/local

重命名

 [3]->mv mysql-5.7.21-linux-glibc2.12-x86_64 mysql-5.7.21  mysql-5.7.21

[4]->cd mysql-5.7.21

添加用戶 組

#添加用戶組
groupadd mysql
#添加用戶mysql 到用戶組mysql
useradd -g mysql mysql

 創建數據目錄

#在/usr/local/mysql-5.7.21目錄下新建data文件夾,以後的數據庫文件將放在這裏
# pwd
/usr/local/mysql-5.7.21
# mkdir data

 

移除本地得my.cnf【文件沒用防止初始化失敗】

rm -rfv /etc/my.cnf

賦權限

# chown -R mysql:mysql ./

#mysql_install_db 被廢棄了,取而代之的是 mysqld –-initialize  (需要注意的是,有時候使用這個指令出錯的話,將--initialize放在命令的最後面,即: ./bin/mysqld --user=xxx --basedir=xx --initizlize)
cd /usr/local/mysql/bin 

 初始化並記住密碼

./mysqld --initialize --user=mysql --basedir=/usr/local/mysql-5.7.20/  --datadir=/usr/local/mysql-5.7.20/data/


#將mysql/目錄下除了data/目錄的所有文件,改回root用戶所有

# chown -R root .

 #mysql用戶只需作爲mysql-5.7.21/data/目錄下所有文件的所有者
# chown -R mysql data

 賦值啓動文件

# cp support-files/mysql.server /etc/init.d/mysqld 

# chmod 755 /etc/init.d/mysqld

# cp /usr/local/mysql-5.7.21/bin/my_print_defaults /usr/bin/

 修改腳本及環境變量

#修改啓動腳本
# vi /etc/init.d/mysqld
#修改項:
basedir=/usr/local/mysql-5.7.21/
datadir=/usr/local/mysql-5.7.21/data
port=3306
#啓動服務
# service mysqld start
#加入環境變量,編輯 /etc/profile,這樣可以在任何地方用mysql命令了
# vi /etc/profile
#添加mysql路徑
export PATH=$PATH:/usr/local/mysql-5.7.21/bin
#刷新立即生效
# source /etc/profile
# mysql -uroot -p

 修改密碼

mysql> set password for 'root'@'localhost'=password('MyNewPass4!');

 設置其他用戶

mysql> GRANT ALL PRIVILEGES ON *.* TO test@'%' IDENTIFIED BY 'test' WITH GRANT OPTION;

 提交

flush privileges;

 【二】配置一主二備

====================================主備設置=================================================

 

  1. 連接到主服務(192.168.1.114)服務器上,給從節點分配賬號權限

GRANT REPLICATION SLAVE ON *.* TO 'root'@'192.168.1.113' IDENTIFIED BY 'admin';

GRANT REPLICATION SLAVE ON *.* TO 'root'@'192.168.1.106' IDENTIFIED BY 'admin';

  1. 在主服務my.ini文件新增 114

server-id=200

log-bin=mysql-bin

relay-log=relay-bin

relay-log-index=relay-bin-index

重啓mysql服務

service mysqld restart

  1. 在從服務my.ini文件新增 113&106

server-id = 210

replicate-do-db =test#需要同步數據庫

重啓mysql服務

service mysqld restart

  1. 從服務同步主數據庫

stop slave;

change master to master_host='192.168.1.114',master_user='root',master_password='admin';

start slave;

show slave status;

 

【三】mycat配置====================================================================================

環境依賴

JAVA

mycat-eye 依賴 jdk1.7+ 的環境

Mycat

1、Mycat的下載地址(https://github.com/MyCATApache/Mycat-download/blob/master/1.6-RELEASE/Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz)

2、解壓

直接解壓到目標目錄,這裏解壓到/use/local/mycat

3、配置

主要按照規則修改conf目錄下的

1]、修改/usr/local/conf/schema.xml,URL、用戶名、密碼修改,其餘不變

<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">

<schema name="mydb" checkSQLschema="false" sqlMaxLimit="100" dataNode="my1" />
<dataNode name="my1" dataHost="test1" database="test" />
<dataHost name="test1" maxCon="1000" minCon="10" balance="1" writeType="0" dbType="mysql" dbDriver="native" >
<heartbeat>select user()</heartbeat>
        <writeHost host="hostM1" url="192.168.1.114:3306" user="root" password="admin" >
                <readHost host="hostS1" url="192.168.1.113:3306" user="root" password="admin" />
        </writeHost>
</dataHost>
</mycat:schema>

3]、修改/usr/local/conf/server.xml,用戶名、密碼修改,其餘不變

  <user name="mycat">
                <property name="password">mycat</property>
                <property name="schemas">mydb</property>
        </user>

        <user name="mycatread">
                <property name="password">mycat</property>
                <property name="schemas">mydb</property>
                <property name="readOnly">true</property>
        </user>
 

4、啓動

進入 /usr/local/mycat/bin (默認數據端口爲8066)

啓動命令:/usr/local/mycat/bin/mycat start

連接mycat:

 

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