2016-08-29 1:25 GMT+03:00 Daniel Black <daniel.black@au1.ibm.com>:
A question for you is why is it important not to have it on the slave?
Because the slave already has this procedure with a slightly different implementation, and different owner (definer).
If the slave is a failover it should have the procedure.
If I wanted a failover server I would not be fiddling with replication options and channels at all.
When I execute `CREATE PROCEDURE mysql.bar` on the master, this procedure appears on the slave.
Which is what replication is meant to do.
This is not consistent with creating and modifying mysql users. That's why I'm asking.
Its probably also best not to populate the mysql database with your stored procedures.
It's totally fine for maintenance procedures. See for example http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.MySQL.SQLRef....
set session sql_log_bin=0; create procedure...
This is not scalable and sometime impossible: for the SUPER privilege, at Amazon RDS, it could break other slaves.