Here is steps take to get to the problem. Version is 5.1.35
To be on the safe side, I did this prior to executing the scripts. I deleted the mysql
directory and the mysql-log directory, recreated them, chowned them, ran
mysql_install_db, chowned them again. So, I know at least I'm working with a clean
setup. I did this on both servers.
So, I have a script, which is actually a combination about 200 other scripts, cat'ed into
a single script. The first half of the script creates a database and several tables.
After all of the tables are created, a trigger is created on one of the tables.
Following the trigger, about 150 stored procedures.
This loads fine on the master server. All looks well. I then set the slave to slave
against the master and it chokes on the creation of the trigger saying it can't find the
table. quickly glancing at the tables, there are none. The database creation was
replicated but the tables were not.
Here is what I have in the my.cnf file for replication (we had this setup for
master/master earlier, thus the replicate-do-db, but we will not be doing that in this
sync_binlog = 1
replicate-same-server-id = 0
log_bin_trust_function_creators = 1
log-bin = /exports/mysql-log/log-repl
binlog-do-db = weblog
binlog-do-db = webarchive
replicate-do-db = weblog
replicate-do-db = webarchive
relay-log = relay-bin
relay-log-index = relay-index
relay-log-info-file = relay-info
relay-log-purge = 1
Everything is INNODB.
Any ideas as to why the tables didn't replicate? Also, I know that triggers shouldn't be
replicated. Is there any was to prevent trigger replication?