天天看點

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;