mysql 修改全局变量让重启也生效

mysql 修改全局变量让重启也生效,第1张

以 group_concat_max_len 为例

如果在mysql启动后执行 set 命令,则重启musql会自动重置

重启后再次获取变量值

修改mysql根目录下的 my.ini , 没有则自己创建一个。

注意这里修改的不是 my-default.ini , 我就犯了这个低级错误。

在my.init的mysqld组内添加 my-default.ini = 2k

修改完成后,即使重启mysql服务也不会恢复默认值了。

官方文档说只要volume映射就可以 https://hub.docker.com/_/mysql?tab=description但本地配置文件虽然映射过去了,MySQL对于配置文件的权限会检查,导致不生效。错误信息为 具体方法见StackOverflow: https://stackoverflow.com/questions/37001272/fixing-world-writable-mysql-error-in-docker解决思路是映射配置文件的source,并在启动MySQL前将配置文件source复制到conf.d,这样配置文件的权限是满足要求的。 我使用的容器版本内vim装不上,无法容器内编辑配置文件。root也进不去,无法修改文件权限。

用GRANT、REVOKE或SET PASSWORD对授权表施行的修改会立即被服务器注意到。

如果你手工地修改授权表(使用INSERT、UPDATE等等),你应该执行一个FLUSH PRIVILEGES语句或运行mysqladmin flush-privileges告诉服务器再装载授权表,否则你的改变将不生效,除非你重启服务器。

当服务器注意到授权表被改变了时,现存的客户连接有如下影响:

* 表和列权限在客户的下一次请求时生效。

* 数据库权限改变在下一个USE db_name命令生效。

全局权限的改变和口令改变在下一次客户连接时生效。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8687144.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-19
下一篇 2023-04-19

发表评论

登录后才能评论

评论列表(0条)

保存