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 06 MySQL
jdbc使用PreparedStatement批量插入数据的方法
Apr 27 MySQL
MySQL的join buffer原理
Apr 29 MySQL
MySQL 分组查询的优化方法
May 12 MySQL
MySQL注入基础练习
May 30 MySQL
MySQL库表名大小写的选择
Jun 05 MySQL
MySQL和Oracle批量插入SQL的通用写法示例
Nov 17 MySQL
Linux7.6二进制安装Mysql8.0.27详细操作步骤
Nov 27 MySQL
MySQL 主从复制数据不一致的解决方法
Mar 18 MySQL
Mysql使用全文索引(FullText index)的实例代码
Apr 03 MySQL
MySQL创建管理子分区
Apr 13 MySQL
Mysql排查分析慢sql之explain实战案例
Apr 19 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
php-cli简介(不会Shell语言一样用Shell)
2013/06/03 PHP
php使用sql server验证连接数据库的方法
2014/12/25 PHP
PHP微信开发之微信消息自动回复下所遇到的坑
2016/05/09 PHP
PHP进程通信基础之信号量与共享内存通信
2017/02/19 PHP
js中的scroll和offset 使用比较的实例与分析
2013/09/29 Javascript
同一个网页中实现多个JavaScript特效的方法
2015/02/02 Javascript
JavaScript DOM事件(笔记)
2015/04/08 Javascript
AngularJS模仿Form表单提交的实现代码
2016/12/08 Javascript
vue.js 左侧二级菜单显示与隐藏切换的实例代码
2017/05/23 Javascript
JS实现十字坐标跟随鼠标效果
2017/12/25 Javascript
详解react-redux插件入门
2018/04/19 Javascript
react native 文字轮播的实现示例
2018/07/27 Javascript
vue-awesome-swiper 基于vue实现h5滑动翻页效果【推荐】
2018/11/08 Javascript
vue项目动态设置页面title及是否缓存页面的问题
2018/11/08 Javascript
在微信小程序中使用vant的方法
2019/06/07 Javascript
移动端吸顶fixbar的解决方案详解
2019/07/17 Javascript
JavaScript实现单图片上传并预览功能
2019/09/30 Javascript
mustache.js实现首页元件动态渲染的示例代码
2020/12/28 Javascript
gearman的安装启动及python API使用实例
2014/07/08 Python
Python脚本实现DNSPod DNS动态解析域名
2015/02/14 Python
python 实现Harris角点检测算法
2020/12/11 Python
移动端html5模拟长按事件的实现方法
2018/09/30 HTML / CSS
玩具反斗城西班牙网上商城:ToysRUs西班牙
2017/01/19 全球购物
.NET面试题:什么是反射
2016/09/30 面试题
医学护理毕业生自荐信
2013/11/07 职场文书
皮肤科医师岗位职责
2013/12/04 职场文书
青蓝工程实施方案
2014/03/27 职场文书
不拖欠农民工工资承诺书
2014/03/31 职场文书
生态养殖创业计划书
2014/05/06 职场文书
活动总结范文
2014/08/30 职场文书
出生公证书
2015/01/23 职场文书
员工离职通知函
2015/04/25 职场文书
银行安全保卫工作总结
2015/08/10 职场文书
村党总支部公开承诺书2016
2016/03/25 职场文书
python 统计代码耗时的几种方法分享
2021/04/02 Python
一文教你快速生成MySQL数据库关系图
2022/06/28 Redis