1. 程式人生 > >mysql 5.7 for win 7 主從搭建 -單機多例項

mysql 5.7 for win 7 主從搭建 -單機多例項

mysql 5.7 for win 7 單機版安裝可以參考 http://blog.csdn.net/wangzizhzxy/article/details/78203858
單機多例項安裝和單機單例項稍有不同


######################################
3306例項安裝和配置:(參照單機單例項,這裡只寫步驟)


環境
os:win 7 64位
mysql:mysql-5.7.19


下載mysql
下載地址:
https://dev.mysql.com/downloads/mysql/


安裝配置
建立必要的目錄
  在D盤下建立如下目錄
  D:\mysql\server--存放mysql資料庫軟體
  D:\mysql\data_3306--存放資料庫檔案
  D:\mysql\log\log_3306--存放binlog檔案


2)解壓軟體安裝包mysql-5.7.19-winx64.zip到D:\mysql\server目錄下
3)準備D:\mysql\my3306.ini檔案如下:
[mysql]
# 設定mysql客戶端預設字符集
default-character-set=utf8 
[mysqld]
server_id=1273306
#設定3306埠
port = 3306 
# 設定mysql的安裝目錄
basedir=D:\mysql\server\mysql-5.7.19-winx64
# 設定mysql資料庫的資料的存放目錄
datadir=D:\mysql\data_3306
# 允許最大連線數
max_connections=200
# 服務端使用的字符集預設為8位元編碼的utf8字符集
character-set-server=utf8
# 建立新表時將使用的預設儲存引擎
default-storage-engine=INNODB 


####: for binlog
binlog_format                           = ROW
log-bin                                 = D:\mysql\log\log_3306\mysql-bin
log-bin-index                           = D:\mysql\log\log_3306\mysql-bin.index


4)以管理員身份執行cmd
d:
cd D:\mysql\server\mysql-5.7.19-winx64\bin
D:\mysql\server\mysql-5.7.19-winx64\bin>mysqld --defaults-file=D:\mysql\my3306.ini --initialize --user=mysql --console --basedir=D:\mysql\server\mysql-5.7.19-winx64 --datadir=D:\mysql\data_3306
--注意記住最後給出的mysql使用者root的密碼


5)配置環境變數,否則你每次都要cd到bin目錄下才能使用mysql
右鍵此電腦(計算機)-屬性-高階系統設定-高階-環境變數,在系統變數中的PATH中加入你的bin目錄,如D:\mysql\server\mysql-5.7.19-winx64\bin


6)安裝MySQL服務,以管理員身份執行cmd
   D:\>"d:\mysql\server\mysql-5.7.19-winx64\bin\mysqld" --install MySQL3306 --defaults-file="D:\mysql\my3306.ini"
Service successfully installed.


7)啟動mysql:
net start mysql




  8)首次連線需要修改root密碼,否則執行命令報錯
  mysql> set password=password("mysql");
  mysql> flush privileges;




######################################
3307例項安裝和配置:(參照單機單例項,這裡只寫步驟)


安裝配置
建立必要的目錄
  在D盤下建立如下目錄
  D:\mysql\data_3307--存放資料庫檔案
  D:\mysql\log\log_3307--存放binlog檔案


2)準備D:\mysql\my3307.ini檔案如下:
[mysql]
# 設定mysql客戶端預設字符集
default-character-set=utf8 
[mysqld]
server_id  = 1273307
#設定3307埠
port = 3307 
# 設定mysql的安裝目錄
basedir=D:\mysql\server\mysql-5.7.19-winx64
# 設定mysql資料庫的資料的存放目錄
datadir=D:\mysql\data_3307
# 允許最大連線數
max_connections=200
# 服務端使用的字符集預設為8位元編碼的utf8字符集
character-set-server=utf8
# 建立新表時將使用的預設儲存引擎
default-storage-engine=INNODB 


####: for binlog
binlog_format                           = ROW
log-bin                                 = D:\mysql\log\log_3307\mysql-bin
log-bin-index                           = D:\mysql\log\log_3307\mysql-bin.index




3)以管理員身份執行cmd,初始化例項
cmd>d:
cd D:\mysql\server\mysql-5.7.19-winx64\bin
D:\mysql\server\mysql-5.7.19-winx64\bin>mysqld --defaults-file=D:\mysql\my3307.ini --initialize --user=mysql --console --basedir=D:\mysql\server\mysql-5.7.19-winx64 --datadir=D:\mysql\data_3307
--注意記住最後給出的mysql使用者root的密碼


4)安裝MySQL服務,以管理員身份執行cmd
   D:\>"d:\mysql\server\mysql-5.7.19-winx64\bin\mysqld" --install MySQL3307 --defaults-file="D:\mysql\my3307.ini"
Service successfully installed.


5)啟動mysql:
net start mysql


  6)首次連線需要修改root密碼
  mysql> set password=password("mysql");
  mysql> flush privileges;




--至此,兩個例項3306、3307都已經啟動


=================================
配置主從
目的:
MySQL3306為主,MySQL3307為從


1)MySQL3306上執行:
mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+------------------+----------+--------------+------------------+---------------
----+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | mysql-bin.000001 |      154 |              |                  |




2)MySQL3306上執行,建立複製使用者
GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO'slave'@'%' IDENTIFIED BY 'slave';


3)MySQL3307上執行
change master to master_host='127.0.0.1',
master_user='slave',
master_password='slave',
master_log_file='mysql-bin.000001',
master_log_pos=154;


--啟動slave
start slave


--檢視slave狀態:
show slave status \G