Each slave must connect to the master using a MySQL user name
and password, so there must be a user account on the master that
the slave can use to connect. Any account can be used for this
operation, providing it has been granted the
REPLICATION SLAVE privilege. You
may wish to create a different account for each slave, or
connect to the master using the same account for each slave.
You need not create an account specifically for replication.
However, you should be aware that the user name and password
will be stored in plain text within the
master.info file (see
Section 126.96.36.199, “Slave Status Logs”). Therefore, you may want to
create a separate account that has privileges only for the
replication process, to minimize the possibility of compromise
to other accounts.
To create a new account, use
USER. To grant this account the privileges required
for replication, use the
statement. If you create an account solely for the purposes of
replication, that account needs only the
REPLICATION SLAVE privilege. For
example, to set up a new user,
repl, that can
connect for replication from any host within the
mydomain.com domain, issue these statements
on the master:
mysql> CREATE USER 'repl'@'%.mydomain.com' IDENTIFIED BY 'slavepass'; mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%.mydomain.com';
See Section 13.7.1, “Account Management Statements”, for more information on statements for manipulation of user accounts.