show databases ;
show tables;
DROP database IF EXISTS mytest;
DROP TABLE IF EXISTS mytest;
CREATE DATABASE IF NOT EXISTS mytest;
show create table mytest;
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码' ;
DROP USER '用户名'@'主机名' ;
SHOW GRANTS FOR '用户名'@'主机名' ;
GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';
REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';
SELECT @@autocommit ;
SET @@autocommit = 0 ;
START TRANSACTION 或 BEGIN ;
COMMIT;
ROLLBACK;
## 引擎
# 查询当前数据库支持的存储引擎
show engines ;
# 如果该参数开启,代表对于InnoDB引擎的表,每一张表都对应一个ibd文件。
show variables like 'innodb_file_per_table';
# 索引
SHOW INDEX FROM table_name ;
DROP INDEX index_name ON table_name ;
CREATE INDEX idx_user_name ON tb_user(name);
CREATE UNIQUE INDEX idx_user_phone ON tb_user(phone);
CREATE INDEX idx_user_pro_age_sta ON tb_user(profession,age,status);
CREATE INDEX idx_email ON tb_user(email);
# SQL性能
# 通过如下指令,可以查看当前数据库的INSERT、UPDATE、DELETE、SELECT的访问频次:
SHOW GLOBAL STATUS LIKE 'Com_______';
# 慢日志
show variables like 'slow_query_log';
# show profiles 能够在做SQL优化时帮助我们了解时间都耗费到哪里去了。通have_profiling参数,能够看到当前MySQL是否支持profile操作
SELECT @@have_profiling ;
-- 查看每一条SQL的耗时基本情况
show profiles;
-- 查看指定query_id的SQL语句各个阶段的耗时情况
show profile for query query_id;
-- 查看指定query_id的SQL语句CPU的使用情况
show profile cpu for query query_id;
# explain 最左前缀法则
kill 36021
SHOW VARIABLES LIKE 'max_connections';
SHOW PROCESSLIST;
2.Redis
# 登录
export REDIS_PASSWORD='KYUIAPErZz2Xb0f8XIQOKfuv7dYURu'
/Users/wgg/dev/nosql/redis6.2.6/bin/redis-cli --raw -h 127.0.0.1 -p 6380 -a "$REDIS_PASSWORD"
# 缓存命中查询
/Users/wgg/dev/nosql/redis/bin/redis-cli -h 127.0.0.1 -p 6378 -a 'KYUIAPErZz2Xb0f8XIQOKfuv7dYURu' INFO stats | grep 'keyspace_hits\|keyspace_misses'
3.Es
# 健康检查
GET _cat/health
# 索引查看
GET _cat/indices?v
# 插件
GET _cat/plugins?v
# 分词器验证
GET /_analyze
{
"analyzer": "ik_max_word",
"text": "hhh哈哈哈,学习的能力太棒了"
}
## CRUD
GET school/_doc/3
POST school/_doc/3
PUT school/_doc/3
DELET school/_doc/3