patternsqlMinor
mysql replication and GRANT that doesn't quite grant
Viewed 0 times
grantquitereplicationmysqldoesnthatand
Problem
I am trying to set up mysql replication. All's well, but I see an error 1045 for the slave:
I try connecting manually, it starts out fine, but I've a permission problem. I can connect but I can't see anything but the info database:
```
$ mysql -h my-host-name -u slave_user -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
mysql> show slave status\G
*************************** 1. row ***************************
Slave_IO_State: Connecting to master
Master_Host:
Master_User: slave_user
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000001
Read_Master_Log_Pos: 107
Relay_Log_File: mysqld-relay-bin.000003
Relay_Log_Pos: 4
Relay_Master_Log_File: mysql-bin.000001
Slave_IO_Running: Connecting
Slave_SQL_Running: Yes
Replicate_Do_DB: my_db_name
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 107
Relay_Log_Space: 107
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: NULL
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 1045
Last_IO_Error: error connecting to master 'slave_user@my.host.ip:3306' - retry-time: 60 retries: 86400
Last_SQL_Errno: 0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id: 0
1 row in set (0.00 sec)
mysql>I try connecting manually, it starts out fine, but I've a permission problem. I can connect but I can't see anything but the info database:
```
$ mysql -h my-host-name -u slave_user -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Solution
While MySQL does not impose a password length limit, replication does. (I have not been able to find this in the MySQL documentation, but, empirically, it holds.)
This is all the less obvious, because the longer password works for login but fails for replication. So, in the end, reducing the password to 32 characters solved the problem.
This is all the less obvious, because the longer password works for login but fails for replication. So, in the end, reducing the password to 32 characters solved the problem.
Context
StackExchange Database Administrators Q#139583, answer score: 3
Revisions (0)
No revisions yet.