博客
关于我
Mysql基础命令 —— 系统操作命令
阅读量:790 次
发布时间:2023-02-12

本文共 2793 字,大约阅读时间需要 9 分钟。

Mysql系统变量及运行状态优化指南

一、连接MySQL

1. 连接MySQL命令

mysql -h 数据库地址ip或域名 -u 登录账户名 -p
  • -h:指定数据库地址,默认为localhost。
  • -u:MySQL数据库账户名。
  • -p:指定密码,若密码为空,可省略。

2. 选项说明

  • -h:指定数据库地址,默认值为localhost。
  • -u:MySQL数据库账户名。
  • -p:指定密码,默认为空,若不提供密码,可省略。

二、Mysql系统变量

1. 查看系统变量命令格式

SHOW [GLOBAL | SESSION] VARIABLES [LIKE 'pattern' | WHERE expr]
  • []:可选项,直接SHOW VARIABLES可查询所有系统变量。
  • [GLOBAL | SESSION]:指定查找范围,默认为SESSION。
    • GLOBAL:全局变量。
    • SESSION:会话变量。
  • [LIKE 'pattern' | WHERE expr]:指定查找条件,LIKE和WHERE的使用与SQL查询类似。

2. 全局变量与会话变量

  • 全局变量:MySQL启动时由服务器初始化,默认值可通过my.ini修改。
  • 会话变量:每次连接时由MySQL初始化,若未修改,默认与全局变量相同。
  • 区别:修改全局变量影响服务器,修改会话变量仅影响当前会话。

3. 获取当前MySQL端口号

SHOW VARIABLES LIKE 'port';

4. 查询MySQL编码

SHOW VARIABLES LIKE 'character%';

5. 查询最大连接数

SHOW VARIABLES LIKE '%max_connections%';

6. 查看数据库文件存放路径

SHOW VARIABLES LIKE '%datadir%';

7. 查看MySQL超时相关配置

SHOW GLOBAL VARIABLES LIKE "%timeout%";

三、设置或修改MySQL系统变量

1. 方法一:修改MySQL配置文件

// 打开my.cnfvim /etc/my.cnf// 修改参数(例如wait_timeout)[mysqld]wait_timeout=10// 重启MySQLservice mysqld restart

2. 方法二:命令行设置(推荐)

// 设置全局变量SET GLOBAL wait_timeout=10;// 修改my.cnf并生效vim /etc/my.cnf[mysqld]wait_timeout=10// 查看设置是否生效SHOW GLOBAL VARIABLES LIKE 'wait_timeout';

3. 还原系统变量

// 全局变量还原SET GLOBAL wait_timeout=DEFAULT;// 会话变量还原SET @@SESSION.wait_timeout=DEFAULT;

4. 系统变量转换

SET @@SESSION.wait_timeout=@@GLOBAL.wait_timeout;

5. 注意事项

  • 并非所有变量支持DEFAULT,设置为DEFAULT时可能返回错误。
  • SET在当前会话中生效,全局变量需修改my.cnf并重启MySQL。

四、查看MySQL运行状态

1. 命令格式

SHOW [GLOBAL | SESSION] STATUS [LIKE 'pattern'];

2. 常用状态查询

// 查看所有状态SHOW STATUS;// 查看运行时间(秒)SHOW STATUS LIKE 'uptime';// 查看查询次数SHOW [GLOBAL] STATUS LIKE 'com_select';// 查看插入次数SHOW [GLOBAL] STATUS LIKE 'com_insert';// 查看更新次数SHOW [GLOBAL] STATUS LIKE 'com_update';// 查看删除次数SHOW [GLOBAL] STATUS LIKE 'com_delete';// 查看连接数SHOW STATUS LIKE 'connections';// 查看线程缓存数量SHOW STATUS LIKE 'threads_cached';// 查看当前连接数SHOW STATUS LIKE 'threads_connected';// 查看线程创建数量SHOW STATUS LIKE 'threads_created';// 查看线程运行状态SHOW STATUS LIKE 'threads_running';// 查看立即获得锁的次数SHOW STATUS LIKE 'table_locks_immediate';// 查看等待锁的次数SHOW STATUS LIKE 'table_locks_waited';// 查看慢启动线程数SHOW STATUS LIKE 'slow_launch_threads';// 查看慢查询次数SHOW STATUS LIKE 'slow_queries';

五、当前MySQL状态

1. 查询命令

STATUS

2. 查询结果说明

// 例子:项目数据库状态mysql  Ver 14.14 Distrib 5.5.53, for Win32 (AMD64)Connection id:          474Current database:       projectCurrent user:           root@localhostSSL:                    Not in useServer characterset:    utf8Db     characterset:    utf8Client characterset:    utf8TCP port:               3306Uptime:                 1 day 7 hours 31 min 56 secThreads: 1Questions: 5917Slow queries: 0Opens: 257Flush tables: 1Open tables: 0

3. 关键参数解释

  • character_set_*:数据库编码设置,保证所有编码一致以避免数据乱码。
  • max_connections:数据库允许的最大连接数。
  • wait_timeout:客户端连接超时时间。
  • interactive_timeout:数据库线程等待时间。

总结

通过以上方法,可以全面了解并优化MySQL配置。理解和调整MySQL系统变量是数据库性能优化的关键步骤,建议从基础开始,逐步掌握每个参数的作用和影响。

转载地址:http://mhbfk.baihongyu.com/

你可能感兴趣的文章
Mysql学习总结(57)——MySQL查询当天、本周、本月、上周、本周、上月、距离当前现在6个月数据
查看>>
Mysql学习总结(58)——深入理解Mysql的四种隔离级别
查看>>
Mysql学习总结(59)——数据库分库分表策略总结
查看>>
Mysql学习总结(5)——MySql常用函数大全讲解
查看>>
Mysql学习总结(60)——并发量大、数据量大的互联网业务数据库设计规范总结
查看>>
Mysql学习总结(61)——MySQL优化之DBA级优化整理汇总
查看>>
Mysql学习总结(62)——MySQL连接com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link问题
查看>>
Mysql学习总结(63)——Mysql数据库架构方案选择与分析
查看>>
Mysql学习总结(64)——Mysql配置文件my.cnf各项参数解读
查看>>
Mysql学习总结(65)——项目实战中常用SQL实践总结
查看>>
Mysql学习总结(66)——设置MYSQL数据库编码为UTF-8
查看>>
Mysql学习总结(67)——MYSQL慢查询日志
查看>>
Mysql学习总结(68)——MYSQL统计每天、每周、每月、每年数据 SQL 总结
查看>>
Mysql学习总结(69)——Mysql EXPLAIN 命令使用总结
查看>>
Mysql学习总结(6)——MySql之ALTER命令用法详细解读
查看>>
Mysql学习总结(70)——MySQL 优化实施方案
查看>>
Mysql学习总结(71)——MySQL 重复记录查询与删除总结
查看>>
Mysql学习总结(71)——数据库介绍(MySQL安装 体系结构、基本管理)再回顾
查看>>
Mysql学习总结(72)——MySQL 开发者开发,设计规范再总结
查看>>
Mysql学习总结(73)——MySQL 查询A表存在B表不存在的数据SQL总结
查看>>