共享 MySQL、独享 MySQL 对比 ################################## .. list-table:: :header-rows: 1 :widths: 10 45 45 :stub-columns: 1 - * * 共享 MySQL * 独享 MySQL - * 架构 * 共享 MySQL 并不会创建新的 mysql-server(mysqld) 实例,而只是在已有的 mysql-server 集群里选择一个实例,然后在这个实例上调用 CREATE DATABASE app_$APPNAME 创建一个新的 database 供您使用。你的 MySQL 会和其它人的共享 mysql-server 实例。 * 独享 MySQL 会为你在云端实实在在的创建一个实例。你可以在上面创建任意多的 DATABASE,任意多的 USER。 - * 隔离 * 通过 MySQL 的认证体系(用户名、密码)来隔离。 * 你的数据库和其它用户的数据库是物理隔离的。 - * 限制 * - 对 SQL 查询的数据量和时间有比较严格的要求,详细见 :ref:`SQL 拦截规则` 。 - 不支持长链接,链接空闲 60s 后会被服务端关闭。 - 对 `information_schema` 下表的查询需要指定 SCHEMA ,可能会导致部分 orm migration (比如 ``django makemigrations`` )执行失败。 - 如果出现太多慢查询(1s 以上),可能会导致数据库被禁用一段时间。 - 不支持存储过程。 - 不支持修改 MySQL 系统参数。 - 不支持定时任务。 * 无 - * 导入导出 * 大于 10M 的导入导出任务不会立即执行,会选择数据库负载比较低的时候执行(24 小时内)。 * 任意时间随意执行。 - * 适用建议 * 数据量小或者中等(小于百万行),SQL 查询基本在 1s 以下的中小型应用。 * 大中小型等任意应用。 - * 主从 * 一主一从 * 支持添加任意多从,分担主库压力。