MySQL数据库配置信息查看与修改方法详解


Posted in MySQL onJune 25, 2022

摘要

当在不同团队间使用MySQL数据库时,最好是保证数据库的配置信息是一致的,否则会因为不同开发同事的SQL规范不一样,导致出现一些不必要的SQL问题;

本篇博客,主要记录如何查看数据的配置信息,及相关解释。

查看

查看数据基本信息

查看版本

查看版本
select version();

显示所有可用的字符集;
SHOW CHARACTER SET;

只显示包含utf8的字符集;
SHOW CHARACTER SET LIKE '%utf8%';

显示所有的校对规则;
SHOW COLLATION;

只显示包含utf8的校对规则;
SHOW COLLATION LIKE '%utf8%';

查询sql_mode

select @@global.sql_mode;

select @@sql_mode;

确保一致,否则容易出问题;

查看在配置文件中定义的变量

mysqld --help --verbose

查看MySQL的服务当前运行时的变量

SHOW [{GLOBAL|SESSION}] VARIABLES [LIKE ''];
SELECT @@{GLOBAL|SESSION}.VARIABLE_NAME;
SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='VARIABLE_NAME';
SELECT * FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='VARIABLE_NAME';

显示MySQL所有的系统变量

SHOW VARIABLES;

常用查询

查个别信息,通过like过滤:

show variables like '%datadir%';
show variables like '%basedir%';

SHOW VARIABLES LIKE 'character%';
SHOW VARIABLES LIKE 'collation_%';

是否大小写敏感

show Variables like '%table_names';

lower_case_table_names=0 区分大小写

lower_case_table_names=1 表示不区分大小写

如何修改?

注意:

mysql 8.0以前,可以通过,先停止mysql服务,再修改配置文件(如lower_case_table_names=1),再重启mysql服务的方式来修改;

mysql8.0 要求我们不能在initialize之后再更改lower_case_table_names 的值,也就是说,再通过更改 my.cnf 文件是不管用的。所以需要删除原来的所有数据,我的数据目录是在/user/local/mysql/data/,进入到该目录进行删除,默认的路径为:/var/lib/mysql 删除该路径下的所有文件即可

查看MySQL默认认证方式

show global variables like '%default_auth%';

也支持修改。详见下面修改的章节。

举例,下面是静态修改:

# vi /etc/my.cnf

[mysqld]
default_authentication_plugin = mysql_native_password

修改MySQL的系统变量

根据变量修改的方式

动态变量:可以在MySQL运行时调整其指,并立即生效;

例如:

set global sort_buffer_size=value

静态变量:需要在配置文件中修改,重启服务后生效;例如:/etc/my.cnf

根据变量的生效范围

全局变量:服务级别的设定,对整个服务生效,所有回话,当时已经连接的不生效,重新连接才生效;
例如:

set global sort_buffer_size=value

会话变量:仅对当前会话生效,其他会话和新会话不受影响;会话结束值即销毁;

例如:

set session sort_buffer_size=value

总结

到此这篇关于MySQL数据库配置信息查看与修改的文章就介绍到这了,更多相关MySQL配置信息查看修改内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MySQL 相关文章推荐
MySQL学习总结-基础架构概述
Apr 05 MySQL
MySQL8.0.24版本Release Note的一些改进点
Apr 22 MySQL
MYSQL主从数据库同步备份配置的方法
May 26 MySQL
MySQL中InnoDB存储引擎的锁的基本使用教程
May 26 MySQL
mysql 如何获取两个集合的交集/差集/并集
Jun 08 MySQL
使用ORM新增数据在Mysql中的操作步骤
Jul 26 MySQL
mysql 索引合并的使用
Aug 30 MySQL
浅谈MySql整型索引和字符串索引失效或隐式转换问题
Nov 20 MySQL
MySQL中CURRENT_TIMESTAMP的使用方式
Nov 27 MySQL
mysql的单列多值存储实例详解
Apr 05 MySQL
MySQL数据库安装方法与图形化管理工具介绍
May 30 MySQL
MySQL数据库实验之 触发器和存储过程
Jun 21 MySQL
SQL语句中EXISTS的详细用法大全
Jun 25 #MySQL
MySQL约束(创建表时的各种条件说明)
Jun 21 #MySQL
MySQL数据库实验实现简单数据库应用系统设计
Jun 21 #MySQL
MySQL数据库表约束讲解
Jun 21 #MySQL
MySQL数据库实验之 触发器和存储过程
Jun 21 #MySQL
MySQL transaction事务安全示例讲解
Jun 21 #MySQL
MySQL详细讲解变量variables的用法
Jun 21 #MySQL
You might like
JavaScript 模仿vbs中的 DateAdd() 函数的代码
2007/08/13 Javascript
javascript 去字符串空格终极版(支持utf8)
2009/11/14 Javascript
基于jquery的跟随屏幕滚动代码
2012/07/24 Javascript
Extjs 4.x 得到form CheckBox 复选框的值
2014/05/04 Javascript
使用upstart把nodejs应用封装为系统服务实例
2014/06/01 NodeJs
js密码强度检测
2016/01/07 Javascript
浅谈jQuery中事情的动态绑定
2017/02/12 Javascript
JS设置时间无效问题的解决办法
2017/02/18 Javascript
纯js的右下角弹窗实例
2017/03/12 Javascript
webpack4.0打包优化策略整理小结
2018/03/30 Javascript
解决vue this.$forceUpdate() 处理页面刷新问题(v-for循环值刷新等)
2018/07/26 Javascript
解决layui中的form表单与button的点击事件冲突问题
2018/08/15 Javascript
js 实现在2d平面上画8的方法
2018/10/10 Javascript
JavaScript实现表单注册、表单验证、运算符功能
2018/10/15 Javascript
JavaScript基础之静态方法和实例方法分析
2018/12/26 Javascript
详细教你微信公众号正文页SVG交互开发技巧
2019/07/25 Javascript
vue-model实现简易计算器
2020/08/17 Javascript
[00:50]2014DOTA2国际邀请赛 NEWBEE战队回顾
2014/08/01 DOTA
编写简单的Python程序来判断文本的语种
2015/04/07 Python
基于python 字符编码的理解
2017/09/02 Python
python 浅谈serial与stm32通信的编码问题
2019/12/18 Python
Ranorex通过Python将报告发送到邮箱的方法
2020/01/12 Python
django 解决自定义序列化返回处理数据为null的问题
2020/05/20 Python
python反爬虫方法的优缺点分析
2020/11/25 Python
python tkinter实现下载进度条及抖音视频去水印原理
2021/02/07 Python
C#软件工程师英语面试题
2015/06/07 面试题
汽车电子与维修专业大学生求职信
2013/09/28 职场文书
捐资助学倡议书
2014/04/15 职场文书
网络编辑求职信
2014/04/30 职场文书
毕业实习自我鉴定范文2014
2014/09/26 职场文书
大学生自荐信范文
2015/03/05 职场文书
圣诞晚会主持词开场白
2015/05/28 职场文书
证婚人婚礼致辞
2015/07/28 职场文书
小学语文继续教育研修日志
2015/11/13 职场文书
canvas实现贪食蛇的实践
2022/02/15 Javascript
避坑之 JavaScript 中的toFixed()和正则表达式
2022/04/19 Javascript