Any way to copy the schema from one MySQL database to another?

Have a look at mysqldump and it's --no-data option to get a copy of the schema. Once you have that you will have to make a script to source in mysql

e.g.

mysqldump --no-data -u user -p database >database-schema.sql

will generate a copy of the schema for database database.

If you had a script like below in a file called for example makedbs.sql

create database N;

set permissions here

use N;

source database-schema.sql;

create database N1;

set permissions here

use N1;

source database-schema.sql;

Then you could run mysql and source makedbs.sql

mysql -u user -p

mysql> source makedbs.sql

which would create 2 databases N and N1 which have the same schema as your original.


You can dump the schema of an existing database using mysqldump with the --no-data option and then use this to create new databases using a simple script that creates each database and then populates it from the output of mysqldump.