ALTER DATABASE Statement •Tables: • CREATE TABLE • ALTER TABLE • CREATE INDEX • DROP INDEX • RENAME TABLE • TRUNCATE TABLE • DROP TABLE • DELETE • INSERT • IMPORT TABLE • LOAD DATA • LOAD XML • REPLACE • UPDATE •For cascading foreign keys where the child table is in a read-only database, updates and deletes on the parent are rejected even if the child table is not directly affected. •For a  MERGE  table such as  CREATE TABLE s1.t(i int) ENGINE MERGE UNION (s2.t, s3.t), INSERT_METHOD=... , the following behavior applies: •Inserting into the  MERGE  table ( INSERT into s1.t ) fails if at least one of  s1 ,  s2 ,  s3  is read only, regardless of insert method. The insert is refused even if it would actually end up in a writable table. •Dropping the  MERGE  table ( DROP TABLE s1.t ) succeeds as long as  s1  is not read only. It is permitted to drop a  MERGE  table that refers to a read-only database. An  ALTER DATABASE  statement blocks until all concurrent transactions that have already accessed an object in the database being altered have committed. Conversely, a write transaction accessing an object in a database being altered in a concurrent  ALTER DATABASE  blocks until the  ALTER DATABASE  has committed. If the Clone plugin is used to clone a local or remote data directory, the databases in the clone retain the read-only state they had in the source data directory. The read-only state does not affect the cloning process itself. If it is not desirable to have the same database read-only state in the clone, the option must be changed explicitly for the clone after the cloning process has finished, using  ALTER DATABASE operations on the clone. When cloning from a donor to a recipient, if the recipient has a user database that is read only, cloning fails with an error message. Cloning may be retried after making the database writable. 2474