文章目录
- 1、mysql客户端常用命令及语句
-
- 1.1、查看MySQL服务器全局级别及会话级别信息
- 1.2、查看数据库及表信息
- 1.3、对数据库及表的增删改操作
- 1.4、用户的创建与授权
- 1.5、其他
- 2、mysqladmin常用命令
- 3、mysqldump常用命令
1、mysql客户端常用命令及语句
1.1、查看MySQL服务器全局级别及会话级别信息
#显示当前连接、客户端、数据库字符集等数据库状态
mysql> STATUS;
# 显示变量
mysql> SHOW VARIABLES LIKE 'have%'
# 查看当前连接(会话)和服务器的事务隔离模式。
mysql> SELECT @@tx_isolation, @@global.tx_isolation;
# 显示可用引擎
mysql> SHOW ENGINES;
# 显示MySQL支持的排序方式
mysql> SHOW COLLATION;
# 显示前一条命令的告警信息
mysql> SHOW WARNINGS;
1.2、查看数据库及表信息
# 列出所有可见的数据库
mysql> SHOW DATABASES;
# 显示当前数据库
mysql> SELECT DATABASE();
# 切换到test数据库;
mysql> USE test;
# 列出当前数据库下所有表
mysql> SHOW TABLES:
# 查看pet表的表结构
mysql> DESC pet;
1.3、对数据库及表的增删改操作
# 删除数据库mytest,如果存在的话(不存在也不会报错)
mysql> DROP DATABASE IF EXISTS mytest;
# 创建数据库mytest,默认采用utf-8编码
mysql> CREATE DATABASE mytest DEFAULT CHARSET utf8
# 创建表
CREATE TABLE shop (
article INT(4) UNSIGNED ZEROFILL DEFAULT '0000' NOT NULL,
dealer CHAR(20) DEFAULT '' NOT NULL,
price DOUBLE(16,2) DEFAULT '0.00' NOT NULL,
PRIMARY KEY(article, dealer));
# 插入初始化数据
INSERT INTO shop VALUES
(1,'A',3.45),(1,'B',3.99),(2,'A',10.99),(3,'B',1.45),
(3,'C',1.69),(3,'D',1.25),(4,'D',19.95);
1.4、用户的创建与授权
# 创建用户test1;
mysql> CREATE USER test1 IDENTIFIED BY '用户密码';
# 修改用户密码: SET PASSWORD FOR user_name@ip_address = password('');
mysql> SET PASSWORD FOR 'test1'@'%' = password('000000');
# 将数据库mytest授权用户test1
mysql> GRANT select,insert,update,delete ON mytest.* TO 'test1'@'%';
# 授权用户远程访问:
mysql> GRANT ALL PRIVILEGES ON 数据库名.* TO '用户名'@'%' IDENTIFIED BY '用户密码' WITH GRANT OPTION;
1.5、其他
# 显示指定表使用的哪种引擎
mysql> USE information_schema;
mysql> SELECT table_name,engine FROM information_schema.tables WHERE table_schema = 'Your Database Name';
# 查询SQL_MODE
mysql> SELECT ROUTINE_SCHEMA, ROUTINE_NAME, SQL_MODE FROM INFORMATION_SCHEMA.ROUTINES;
mysql> SELECT EVENT_OBJECT_SCHEMA, EVENT_OBJECT_TABLE, TRIGGER_NAME, SQL_MODE FROM INFORMATION_SCHEMA.TRIGGERS;
2、mysqladmin常用命令
# 显示变量
mysqladmin -p variables | grep log_queries_not_using_indexes
#设置root密码
myaqladmin -u root -p password "new password"
# 显示状态
# extended-status显示的是服务器状态变量和值。
# -r:显示当前状态变量和上一次运行命令状态变量的差值。
# -i:重复执行命令的间隔时间。
mysqladmin extended-status -uroot -r -i 10
# 显示当前连接的线程
mysqladmin -uroot -p processlist
# 关闭数据库
mysqladmin shutdown
3、mysqldump常用命令
# 备份数据库/导出数据库
mysqldump -uroot --hex-blob db_name > db_name.sql
# 备份数据库,同时做压缩
mysqldump -uroot --hex-blob db_name |gzip > db_name.sql.gz
# 恢复数据/导入数据
mysql db_name < db_name.sql