Mysql
 sql >> база данни >  >> RDS >> Mysql

mariadb конектор J Aurora Бързо внедряване при отказ

Ето някои съвети:Aurora има много случаи. Единият е "писател" (господар), други са "четец" (роби).

Когато записващото устройство не работи, един роб ще бъде повишен за нов главен, други подчинени ще се репликират от този нов главен (автоматично рестартиране). Ако старият господар се появи отново, той ще стане роб.

Aurora има DNS крайна точка за клъстер като "xx.cluster-yy.zz.rds.amazonaws.com", която сочи към текущия главен обект. Когато възникне отказ, DNS се обновява... но не веднага.

„Връзка“ с aurora означава 2 основни връзки с екземпляри:една към главен, друга към подчинена. Драйверът ще използва основната връзка за главен или подчинен според Connection.setReadonly().

Всеки път, когато драйверът се свърже с екземпляр, той ще осигури проверка на текущото състояние на глобалната променлива "innodb_read_only" (OFF =master).

Могат да се добавят екземпляри на Aurora, така че при първоначално свързване, използвайки крайна точка на потребителския клъстер, текущият списък с екземпляри ще бъде извлечен чрез information_schema.replica_host_status.

За да установи 2-те основни връзки, драйверът ще се свърже с произволен хост, ако това е текущият главен хост, добре, тогава всички други хостове са подчинени, ако не, драйверът ще попита подчинения неговия текущ главен, така че следващата връзка ще свърже хост с помощта на information_schema. replica_host_status, където session_id ='MASTER_SESSION_ID' (по-надежден от използването на DNS). Ако връзката с даден екземпляр не успее, това име на екземпляра ще бъде поставено в черен списък за определен период от време (този черен списък се споделя на jvm), за да се избегне повторното му използване. Драйверът се опитва да свърже отново произволен достъпен хост, докато няма такъв, който не е в черен списък, след което може да опита отново с такъв от черен списък за известно време (в зависимост от параметрите). Ако връзката е успешна, тогава екземплярът е "отменен от черния списък".

За преодоляване на основната подчинена връзка след това се използва главната връзка и някакъв основен пул от нишки ще се опита да свърже повторно подчинен екземпляр във фонов режим.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. имплодирайте масив в разделен със запетая низ от mysql заявката

  2. Как да използвам ПРИ АКТУАЛИЗИРАНЕ НА ДУБЛИРАН КЛЮЧ в моя модел CodeIgniter?

  3. колко безопасни са изготвените изявления за ЗНП

  4. Изберете всички записи, които не отговарят на определени условия в обединена таблица

  5. Получаване на връзката неуспешно:php_network_getaddresses:getaddrinfo неуспешно:Име или услуга не са известни