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 MVCC机制原理详解
Apr 20 MySQL
如何用Navicat操作MySQL
May 12 MySQL
MySQL 自定义变量的概念及特点
May 13 MySQL
详解mysql三值逻辑与NULL
May 19 MySQL
MySQL查看表和清空表的常用命令总结
May 26 MySQL
MySQL 数据类型选择原则
May 27 MySQL
MySQL 百万级数据的4种查询优化方式
Jun 07 MySQL
面试被问select......for update会锁表还是锁行
Nov 11 MySQL
MySQL磁盘碎片整理实例演示
Apr 03 MySQL
MySQL范围查询优化的场景实例详解
Jun 10 MySQL
mysql sock文件存储了什么信息
Jul 15 MySQL
mysql序号rownum行号实现方式
Dec 24 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
ThinkPHP模版中导入CSS和JS文件的方法
2014/11/29 PHP
通过实例解析PHP数据类型转换方法
2020/07/11 PHP
[原创]静态页面也可以实现预览 列表不同的显示方式
2006/10/14 Javascript
js操作textarea 常用方法总结
2012/12/03 Javascript
jQuery中fadeOut()方法用法实例
2014/12/24 Javascript
jQuery实现列表的全选功能
2015/03/18 Javascript
javascript变量声明实例分析
2015/04/25 Javascript
Bootstrap的Refresh Icon也spin起来
2016/07/13 Javascript
JSONP和批量操作功能的实现方法
2016/08/21 Javascript
JQuery Ajax WebService传递参数的简单实例
2016/11/02 Javascript
简单理解js的冒泡排序
2016/12/19 Javascript
JS中mouseup事件丢失的原因与解决办法
2017/06/14 Javascript
微信小程序canvas写字板效果及实例
2017/06/15 Javascript
JS 组件系列之Bootstrap Table的冻结列功能彻底解决高度问题
2017/06/30 Javascript
Angular利用内容投射向组件输入ngForOf模板的方法
2018/03/05 Javascript
vue实现城市列表选择功能
2018/07/16 Javascript
vue移动端下拉刷新和上拉加载的实现代码
2018/09/08 Javascript
Nuxt.js实战和配置详解
2019/08/05 Javascript
js实现AI五子棋人机大战
2020/05/28 Javascript
python函数形参用法实例分析
2015/08/04 Python
从源码解析Python的Flask框架中request对象的用法
2016/06/02 Python
Django如何实现内容缓存示例详解
2017/09/24 Python
Python模拟简单电梯调度算法示例
2018/08/20 Python
使用Python脚本从文件读取数据代码实例
2020/01/19 Python
tensorflow 模型权重导出实例
2020/01/24 Python
Python实现打包成库供别的模块调用
2020/07/13 Python
python实现人性化显示金额数字实例详解
2020/09/25 Python
汽车维修专业毕业生的求职信分享
2013/12/04 职场文书
专升本个人自我评价
2013/12/22 职场文书
档案保密承诺书
2014/06/03 职场文书
2016新教师岗前培训心得体会
2016/01/08 职场文书
2016计划生育先进个人事迹材料
2016/02/29 职场文书
2016年百日安全生产活动总结
2016/04/06 职场文书
详解MySQL中的pid与socket
2021/06/15 MySQL
Oracle 多表查询基本语法实例
2022/04/18 Oracle
Flink 侧流输出源码示例解析
2022/09/23 Servers