MySQL 中的模式概念

问题描述

是否有在 MysqL 中使用“模式”的建议方法?例如,如果我有一个名为 events数据库,然后我想要有两个环境 devprod,有什么方法可以做到这一点?目前我添加一个表前缀,但它似乎有点hack-ish:

enter image description here

解决方法

您为此创建了一个单独的数据库,因为 MySQL 没有 schema 的概念,例如PostgreSQL 可以。

您为生产创建一个数据库,例如prod_database 具有表名 event 和 event_type。和一个用于开发的数据库,例如dev_database,具有相同的表名 event 和 event_type。因为您总是希望在不同的环境中拥有相同的表名。

如果您将数据库托管在不同的服务器上,您甚至可以(并且应该)使用相同的数据库名称。哪个对于生产和开发/登台也有意义,例如在一种设置上测试服务器版本更新而不影响生产。