test

Cách cấu hình Master Slave Replication trong MySql

MySql replication là 1 tiến trình cho phép bạn dễ dành đồng bộ database giữa 2 databases. Mọi thay đổi trên Mysql master sẽ được tự động đồng bộ sang MySql slave. 
Trong phần này tôi sẽ giới thiệu các cấu hình master-slave trên 2 server chạy FreePBX. Việc này là rất quan trọng khi bạn định xây dựng hệ thông HA cho 2 servers FreePBX.

Dưới đây là hướng dẫn cụ thể.
Bước 1: FreePBX khi các bạn cài đặt đã được cài sẵn mariabd, vì thế các bạn không cần cài mysql hay mariadb nữa. Nhưng bạn cần đặt mật khẩu user root cho databases ở cả 2 servers.

mysqladmin -u root password newpass
 newpass chính là mật khẩu mới của bạn.
Tiếp theo lên server master cấu hình.
Bước 2: Vào file my.cnf trong đường truyền /etc/my.cnf và thêm nội dung sau dưới [mysqld]
server-id=1

log_bin=/var/lib/mysql/mysql-bin
binlog_do_db="asterisk"
binlog_do_db="asteriskcdrdb"
Khi đó file sẽ như thế này các bạn nhé.
Lưu và đóng file lại.
Bước 3: Chú ta hãy vào mysql để tạo User trên Master. User này để Slave dùng để kết nối vào Master, đồng bộ db.


[root@lap-ast1o ~]# mysql -u root -p
Nhập password các bạn vừa đổi ở bước trên vào. Tiếp đó các bạn sẽ vào giao diện của mysql
Giờ chúng ta sẽ tạo User tên là replication, passwork của user là 123456

GRANT REPLICATION SLAVE ON *.* TO 'replication'@'10.0.84.21' IDENTIFIED BY '123456';

Ở đây:
*.*      Đây là thông số chỉ toàn bộ Databases. Bạn có bao nhiêu database user này sẽ thực hiện replication hết sang con Slave. Nếu như chúng ta chỉ muốn Replication 1 database, ví dụ như db có tên là test1 thì chúng ta thay *.* bằng *test1*.
replication: Đây là tên User là replication

123456: Đây là Password cho User replication
10.0.84.21 đây là địa chỉ Ip Address của Slave
Bước 4: Chạy lệnh FLUSH PRIVILEGES; để lưu cấu hình MySQL
Bước 5: Khởi động lại mariadb
[root@lap-ast1o ~]# service mariadb restart
Bước 6: Vào mysql kiểm tra lại Status của master server.
MariaDB [(none)]> show master status;
Chúng ta cần nhớ 2 thông số trong bảng trên là file and postion. Chúng ta sẽ dùng chúng cho việc cấu hình trên server slave.
Bước 7: Cấu hình trên slave
Chúng ta hãy cấu hình file my.cnf giống như server nhé.
server-id=2
log_bin=/var/lib/mysql/mysql-bin
binlog_do_db="asterisk"
binlog_do_db="asteriskcdrdb"
Bước 8: Khởi động lại mariadb
[root@lap-ast2o ~]# service mariadb restart
Bước 9: Vào mysql của slave  để khai báo các thông số của Master Server

MariaDB [(none)]> change master to master_host='10.0.84.26', master_user='replication', master_password='123456', master_log_file='mysql-bin.000003', master_log_pos=72122526;
Sau đó start slave bằng lệnh start slave
MariaDB [(none)]> start slave;
Để chắc chắc bạn có thể dùng lệnh dưới để start slave liên tục, 
SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1; SLAVE START;
Ok rồi đó. Giờ hãy vào server, thử tạo 1 vào user, extention...... để kiểm tra hoạt động nhé.
Bên trên tôi đã giới thiệu cách đồng bộ databases giữa 2 server VOIP FreePBX. Trong phần khác tôi sẽ giới thiệu cách sử dụng keepalived để chạy HA về IP cho 2 servers. 
Trân trọng!
Cách cấu hình Master Slave Replication trong MySql Cách cấu hình Master Slave Replication trong MySql Reviewed by phucvm on tháng 12 13, 2019 Rating: 5

Không có nhận xét nào:

Được tạo bởi Blogger.