作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在寻找一种在 MySQL 中为数据库设置别名的方法。原因是能够在不关闭系统的情况下重命名事件的生产数据库。我想我可以将数据库别名为新名称,在闲暇时更改和部署连接到它的代码,并最终删除旧别名。
如果有更好的方法来完成此操作,请告诉我。
最佳答案
https://dev.mysql.com/doc/refman/5.7/en/symbolic-links-to-databases.html说
MySQL does not support linking one directory to multiple databases.
您可以使用符号链接(symbolic link)将数据库目录链接到其他位置,例如数据目录之外。
$ cd /var/lib/mysql
$ ln -s /other/dir/mydatabase .
但是你不能使用符号链接(symbolic link)使一个数据库目录成为另一个 MySQL 数据库的“别名”:
$ cd /var/lib/mysql
$ ln -s `pwd`/mydatabase1 mydatabase2 # WRONG
原因是 InnoDB 在其自己的数据字典中保留了数据库名称和其他元数据,存储在表空间文件中。如果你混淆它,你将得不到你想要的。
MySQL 没有任何用于数据库别名的 DDL 语法。
关于mysql - 如何在 MySQL 中为数据库设置别名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35022368/
我是一名优秀的程序员,十分优秀!