Cloud SQL MySQL 2nd gen启用performance_schema后缺失sys schema,求生产环境开启步骤
如何在Cloud SQL MySQL 2nd Gen实例中启用sys schema
我来帮你解决这个问题——Cloud SQL MySQL 2nd Gen实例默认确实不会自动创建sys schema,不过只要你已经启用了performance_schema,我们可以手动初始化它,具体步骤如下:
1. 确认你的MySQL版本
sys schema从MySQL 5.7开始就作为官方自带的工具集存在,但不同版本的初始化脚本略有差异,先执行以下命令确认版本:
SELECT VERSION();
2. 获取对应版本的sys schema初始化脚本
你有两种可靠的方式拿到脚本:
- 如果你本地有同版本的MySQL实例,可以直接从本地导出sys schema的创建语句,或者找到MySQL安装目录下
share文件夹里的sys_schema.sql文件 - 也可以直接从MySQL官方的sys schema源码中获取对应版本的脚本内容(注意要严格匹配你的Cloud SQL MySQL版本)
3. 执行初始化脚本
用拥有足够权限的账号(比如root或者具备CREATE SCHEMA、CREATE TABLE、INSERT权限的账号)连接到你的Cloud SQL实例,然后执行拿到的sys schema初始化脚本。你可以通过Cloud Console的查询编辑器执行,也可以用本地的mysql客户端连接后执行。
4. 验证sys schema是否创建成功
执行以下命令确认:
SHOW SCHEMAS LIKE 'sys';
如果返回结果包含sys,说明创建成功,你可以尝试切换到该schema:
USE sys;
额外注意事项
- 一旦创建完成,sys schema会被永久保留,除非你手动删除,实例重启或维护都不会影响它
- 确保performance_schema始终处于启用状态(你已经完成这一步),因为sys schema的大部分视图都是基于performance_schema的数据构建的
- 如果执行脚本时遇到权限错误,检查你的账号是否拥有足够的权限,必要时切换到root账号操作
内容的提问来源于stack exchange,提问作者Pepa Martinec
相关产品推荐
相关产品推荐

