前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL 8.0 OCP 查漏补缺 -配置MySQL

MySQL 8.0 OCP 查漏补缺 -配置MySQL

作者头像
bsbforever
发布2021-05-19 15:53:39
3.9K1
发布2021-05-19 15:53:39
举报

最近在考MySQL 8.0的OCP ,开个专题专门查漏补缺下

只是做备忘,有的概念只是一笔带过,具体可自行搜索

本文中配置和选项文件一个意思

1.配置文件优先级

  • 若配置文件中同一参数有多个值,后面的优先级更高
  • 若有多个配置文件则后读取的文件优先级更高
代码语言:javascript
复制
mysqld --help --verbose 2> /dev/null | grep -A1 "Default options"

Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf

2. 相关defaults选项

  • --no-defaults会忽略配置文件的参数,只会按预编译时的参数以及命令行启动时的参数
代码语言:javascript
复制
mysqld --no-defaults --basedir=/opt/mysql --datadir=/mysql/data --user=mysql --pid-file=/mysql/pid --socket=/mysql/socket --port=3307
  • --defaults-file=file_name 只会读取该文件
  • --defaults-extra-file=file_name 读取所有文件后再读取该文件
  • 还有个directives用法,可以在配置文件中设置包含其他配置文件和目录,有兴趣可以自行搜索

3.默认配置文件位置

windows系统也识别my.cnf文件,不过建议使用my.ini

  • Linux:/etc/my.cnf
  • Windows:C:\my.ini

4. 配置文件组

配置文件组即配置文件中[group-name]下面的选项

他主要用于将配置文件中的参数分组,方便管理客户端程序读取参数

通过如下命令可以知道程序运行时读取了哪些参数

代码语言:javascript
复制
mysqld --help --verbose | grep "following groups"
The following groups are read: mysqld server mysqld-5.7
mysql --help | grep "following groups"
The following groups are read: mysql client
mysqladmin --help | grep "following groups"
The following groups are read: mysqladmin client
mysqldump --help | grep "following groups"
The following groups are read: mysqldump client

下图为client组常用的参数,方便日常使用

再加上一个 show-warnings

可以执行如下命令查看配置文件组内容

代码语言:javascript
复制
my_print_defaults mysql client

mysql --print-defaults mysql client

5.系统变量

5.1 动态变量作用范围

  • 不建议赋予super权限,请使用SYSTEM_VARIABLES_ADMIN权限
  • super权限后续版本会废弃

5.2 持久化全局变量

使用SET PERSIST variable_name = value 来持久化全局变量,而不用修改配置文件是MySQL 8.0的新特性

需要如下权限

  • SYSTEM_VARIABLES_ADMIN
  • PERSIST_RO_VARIABLES_ADMIN

会在datadir下创建json格式的mysqld-auto.cnf文件来保存修改结果

该文件最后读取,优先级最高

使用SET PERSIST_ONLY 不即时生效而是下次启动时读取

使用RESET PERSIST [[IF EXISTS] system_var_name]来清除持久化过的,不加名称则全部清除

可使用 Performance schema下的表来查询相关变量值

  • global_variables
  • session_variables
  • and persisted_variables
  • variables_by_thread
  • variables_info
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-05-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 宅必备 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.配置文件优先级
  • 2. 相关defaults选项
  • 3.默认配置文件位置
  • 4. 配置文件组
  • 5.系统变量
    • 5.1 动态变量作用范围
      • 5.2 持久化全局变量
      相关产品与服务
      云数据库 SQL Server
      腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档