在 MySQL 数据库中,全局变量可以通过 SET GLOBAL 变量来设置。例如,设置服务器语句超时的限制,可以通过设置系统变量 max_execution_time 来实现:

1
SET GLOBAL MAX_EXECUTION_TIME = 2000;

使用 SET GLOBAL 语句设置的变量值只会临时生效。数据库重启后,服务器又会从 MySQL 匹配文件中读取变量的默认值。MySQL 8.0 版本增加了 SET PERSIST 命令。例如设置服务器最大连接数为1000:

1
SET PERSIST GLOBAL max_connections = 1000;

MySQL 会将该命令的配置保存到数据目录下的 mysqlId-auto.cnf 文件中,下次启动时会读取该文件来覆盖默认的配置文件。注意:这个特性对于MAC用户来说很有用,MAC 下的 MySQL 是没有配置文件的,如果想要永久更改配置只能是自己新建一个配置文件,但是我觉得太麻烦了,现在只需要一行命令就可以永久的更改配置真的方便了很多!PERSIST 命令必须要以命名行的形式执行,亲测在 Navicat Premiun 16.1.2 中使用会报错