MySQL - A mudança na senha do db mestre do MySQL afeta o db escravo?

2

Eu quero mudar a senha do banco de dados MySQL no banco de dados mestre. Minha pergunta é: nós temos que cuidar do escravo DB ao mudar a senha do banco de dados mestre?

    
por Milos 04.06.2014 / 09:43

3 respostas

2

A partir dos documentos

User privileges are replicated only if the mysql database is replicated. That is, the GRANT, REVOKE, SET PASSWORD, CREATE USER, and DROP USER statements take effect on the slave only if the replication setup includes the mysql database.

If you are replicating all databases, but do not want statements that affect user privileges to be replicated, set up the slave not to replicate the mysql database, using the --replicate-wild-ignore-table=mysql.% option. The slave recognizes that privilege-related SQL statements have no effect, and thus it does not execute those statements.

See Section 16.4.1.16, “Replication of the mysql System Database”, for more information.

    
por 04.06.2014 / 10:25
1

depende se você está ou não no banco de dados "mysql", o banco de dados interno mysql onde todas as permissões de usuário são mantidas. se o usuário de replicação tiver acesso a "*. *", todas as tabelas do "mysql. *" devem ser replicadas, incluindo "mysql.user", onde as senhas são armazenadas.

quando mudanças nessas tabelas são feitas, um "privilégio de flush" deve ser executado, então pode ser necessário executar isto nos escravos? Eu sempre especificar db específicos para replicação, então eu não testei isso.

    
por 04.06.2014 / 10:26
1

realmente DEPENDE. :)

de acordo com o doc

MySQL 5.1.14 and later. Data modification statements made to tables in the mysql database are replicated according to the value of binlog_format; if this value is MIXED, these statement are replicated using the row-based format. However, statements that would normally update this information indirectly—such GRANT, REVOKE, and statements manipulating triggers, stored routines, and views—are replicated to slaves using statement-based replication.

MySQL 5.1.13 and earlier. User privileges are replicated only if the mysql database is replicated. That is, the GRANT, REVOKE, SET PASSWORD, CREATE USER, and DROP USER statements take effect on the slave only if the replication setup includes the mysql database.

para nossa instância, o mysql 5.5 irá automaticamente criar / remover usuário xxx @ 'xxx' no escravo, mesmo que não estamos fazendo a replicação do banco de dados do sistema mysql .

    
por 14.09.2015 / 12:52