天天看点

mysql数据库配置、数据库管理的一些命令

1 查看数据库默认的存储引擎

SHOW VARIABLES LIKE 'storage_engine';

2 查看数据库有哪些存储引擎

SHOW ENGINES;

3 查看表的基本结构

desc table1;

4 查看建表语句

show create table 表名;

5 设置时区为东时区

set time_zone='+10:00'

6 显示mysql版本号

select VERSION()

7 显示mysql服务器当前连接的次数,每个连接都有各自唯一的id

select CONNECTION_ID()

8 显示出有哪些线程在运行

show PROCESSLIST

show FULL PROCESSLIST

mysql数据库配置、数据库管理的一些命令
mysql数据库配置、数据库管理的一些命令

9 查看当前使用的数据库

select DATABASE()

select SCHEMA()

10 获取用户名的函数

select USER(),CURRENT_USER,SYSTEM_USER(),SESSION_USER()

11 字符集查询

select CHARSET(VERSION())

12 字符排序方式,不同字符集的排序方式不同

select COLLATION(VERSION())

13 加密字段值

select id,MD5(name) from user

14 带盐加解密,版本5.6可用,版本8不可用。解密没通过。

select ENCODE(act_name,'123') from t_act_common_base_info

select DECODE('a�ۺ4˙}','123') from t_act_common_base_info

15 数据格式化

select age,FORMAT(age,3) from user

mysql数据库配置、数据库管理的一些命令

16 改变数据类型的函数

mysql数据库配置、数据库管理的一些命令

17 创建存储过程、查看存储过程和函数、删除存储过程

show FUNCTION status

show PROCEDURE status

show PROCEDURE status like '%TestUser'

drop PROCEDURE selectTestUser;

#####创建查询
delimiter //
create procedure selectTestUser()
begin
select * from test_user;
end
//

#####创建循环插入测试数据的sql
delimiter //
create procedure insertTestUser()
BEGIN
DECLARE n int DEFAULT 1;
#定义默认n的初始值是1,
while n <= 1000000 DO
#如果n< 100000那么就插入一条数据.
INSERT INTO `mine`.`test_user` VALUES (default,CONCAT('jll钟爱的佛啊士大夫',n), CONCAT('123456才能做出',n), CONCAT('123456才能做出',n,n), now(), CONCAT('ffffcare',n), now(), '1', '1');
#插入指定数据
set n = n+1;
#数据插入后 n=n+1
end WHILE;
#结束while循环
END
//
           

18 查看mysql的事物隔离级别

# 查询
SHOW VARIABLES LIKE '%iso%';
# 修改查询结果
SET transaction_isolation='READ-COMMITTED';

show global variables like 'transaction_isolation';
set @@global.transaction_isolation='REPEATABLE-READ';
set global transaction_isolation=1;
           

19 使用查询优化器

set optimizer_trace = "enabled=on";
show variables like '%optimizer_trace%';
# 执行sql
select * from information_schema.optimizer_trace;