mariadb数据库管理三剑客-show、set、use

mariadb数据库管理三剑客-show、set、use

技术教程gslnedu2025-03-20 10:40:293A+A-

MariaDB 中的 SHOWUSESET 是常用的基础命令,用于数据库管理、上下文切换和参数配置。


1.SHOW命令

用于显示数据库、表、列、状态等信息。

常见用法:

  • 显示所有数据库SHOW DATABASES;
  • 显示当前数据库中的表SHOW TABLES;
  • 显示表结构
SHOW CREATE TABLE table_name;  -- 显示建表语句
SHOW COLUMNS FROM table_name;  -- 显示表的列信息(等同 DESC table_name)
  • 显示存储引擎状态
SHOW ENGINES;        -- 所有支持的引擎
SHOW ENGINE InnoDB STATUS;  -- 查看 InnoDB 状态
  • 显示进程和连接
SHOW PROCESSLIST;    -- 查看当前连接的会话
SHOW FULL PROCESSLIST; -- 详细信息
  • 显示权限
SHOW GRANTS FOR 'user'@'host';  -- 查看用户权限
  • 显示系统变量
SHOW VARIABLES LIKE 'max_connections'; -- 查看指定变量
SHOW GLOBAL VARIABLES;                 -- 所有全局变量
  • MariaDB 特有
SHOW STATUS LIKE 'wsrep%';  -- Galera 集群状态(仅 Galera 集群)
SHOW SEQUENCES;             -- 显示所有序列(SEQUENCE 引擎)

2.USE命令

切换当前操作的数据库。

语法:

USE database_name;

示例:

USE my_database;  -- 切换到名为 `my_database` 的数据库

注意事项:

  • 如果数据库不存在,会报错 ERROR 1049 (42000): Unknown database
  • 在脚本中建议显式指定数据库,或在查询中用 database.table 格式(如SELECT * FROM my_db.users)。

3.SET命令

用于配置系统变量、用户变量或会话参数。

常见用法:

  • 设置会话变量(仅当前连接有效):
SET SESSION sql_mode = 'STRICT_TRANS_TABLES';  -- 设置 SQL 模式
SET autocommit = 0;  -- 关闭自动提交
  • 设置全局变量(需管理员权限,重启后可能失效):
SET GLOBAL max_connections = 200;  -- 修改最大连接数
  • 设置用户变量
SET @my_var = 100;  -- 定义变量
SELECT @my_var;     -- 输出 100
  • MariaDB 特有参数
SET GLOBAL wsrep_on = 1;  -- 启用 Galera 同步(Galera 集群)
SET sql_log_bin = 0;      -- 临时禁用二进制日志(谨慎使用)

查看变量值:

SELECT @@GLOBAL.max_connections;  -- 全局变量
SELECT @@SESSION.sql_mode;        -- 会话变量

注意事项:

  1. SET GLOBAL 需要 SUPER 权限。
  2. 全局变量修改可能需重启服务才能永久生效(建议在配置文件中修改,如 my.cnf)。
  3. SHOW 命令的结果可通过 LIKEWHERE 过滤(如SHOW VARIABLES WHERE Variable_name LIKE '%timeout%')。
点击这里复制本文地址 以上内容由朽木教程网整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

朽木教程网 © All Rights Reserved.  蜀ICP备2024111239号-8