Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

kết nối mariadb J Aurora Fast chuyển đổi dự phòng áp dụng

Dưới đây là một số gợi ý:Aurora có nhiều trường hợp. Một là "nhà văn" (Master), những người khác là "Reader" (Nô lệ).

Khi một người viết không hoạt động, một nô lệ sẽ được thăng cấp chủ nhân mới, các nô lệ khác sẽ sao chép từ chủ nhân mới này (tự động khởi động lại). Nếu chủ nhân cũ trở lại, nó sẽ trở thành một nô lệ.

Aurora có điểm cuối DNS cho cụm như "xx.cluster-yy.zz.rds.amazonaws.com" trỏ đến trang cái hiện tại. Khi xảy ra chuyển đổi dự phòng, DNS sẽ được làm mới ... nhưng không phải ngay lập tức.

Một "kết nối" với cực quang có nghĩa là 2 kết nối cơ bản với các cá thể:một với chủ nhân, một với nô lệ. Trình điều khiển sẽ sử dụng kết nối cơ bản để làm chủ hoặc phụ theo Connection.setReadonly ().

Mỗi khi trình điều khiển kết nối với một phiên bản, nó sẽ đảm bảo trạng thái hiện tại đang kiểm tra biến toàn cục "innodb_read_only" (OFF =master).

Các cá thể Aurora có thể được thêm vào, vì vậy trong kết nối ban đầu, bằng cách sử dụng điểm cuối cụm người dùng, danh sách các cá thể hiện tại sẽ được truy xuất bằng cách sử dụng information_schema.replica_host_status.

Để thiết lập 2 kết nối cơ bản, trình điều khiển sẽ kết nối với một máy chủ ngẫu nhiên, nếu đây là máy chủ hiện tại, tốt thì tất cả các máy chủ khác đều là nô lệ, nếu không, trình điều khiển sẽ hỏi máy chủ hiện tại của mình để kết nối tiếp theo sẽ kết nối máy chủ bằng information_schema. replica_host_status where session_id ='MASTER_SESSION_ID' (đáng tin cậy hơn là sử dụng DNS). Nếu kết nối với một phiên bản không thành công, tên phiên bản này sẽ được đưa vào danh sách đen trong một khoảng thời gian nhất định (danh sách đen này được chia sẻ trên mỗi jvm) để tránh sử dụng lại nó. Trình điều khiển cố gắng kết nối lại một máy chủ lưu trữ ngẫu nhiên có sẵn cho đến khi không có máy chủ nào không có trong danh sách đen, sau đó có thể thử lại với máy chủ được liệt kê trong một thời gian (tùy thuộc vào thông số). Nếu kết nối thành công, thì phiên bản đó là "không nằm trong danh sách đen".

Đối với chuyển đổi dự phòng của kết nối phụ cơ bản, kết nối chính sau đó sẽ được sử dụng và một số nhóm luồng cơ bản sau đó sẽ cố gắng kết nối lại một cá thể phụ trong nền.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để nối các kiểu dữ liệu như số nguyên (số nguyên với số nguyên) &varchar (varchar với varchar) trong mysql?

  2. MySQL CHAR () so với T-SQL CHAR ():Sự khác biệt là gì?

  3. Broken Pipe Exception trên ứng dụng Grails

  4. Làm cách nào để tôi có thể sắp xếp theo nhiều cột nhưng không theo giá trị?

  5. Lỗi câu lệnh chuẩn bị Java MYSQL:Kiểm tra cú pháp để sử dụng gần '?' ở dòng 1