Mysql
 sql >> Database >  >> RDS >> Mysql

Come posso alias un database in MySQL?

https://dev.mysql.com /doc/refman/5.7/en/symbolic-links-to-databases.html dice

È possibile utilizzare collegamenti simbolici per collegare una directory di database a un'altra posizione, ad esempio al di fuori della datadir.

$ cd /var/lib/mysql
$ ln -s /other/dir/mydatabase .

Ma non puoi usare collegamenti simbolici per rendere una directory di database un "alias" per un altro database MySQL:

$ cd /var/lib/mysql
$ ln -s `pwd`/mydatabase1 mydatabase2  # WRONG

Il motivo è che InnoDB conserva i nomi dei database e altri metadati all'interno del proprio dizionario dati, archiviato nel file tablespace. Se lo confondi, non otterrai ciò che desideri.

MySQL non ha alcuna sintassi DDL per alias un database.