mysql命令
mysql 命令
参数 | 含义 | |
---|---|---|
–user , -u | 指定登录的用户名 | |
–host ,-h | 指定登录的IP地址 | |
–password,-p | 指定密码 | |
–port,-P | 指定端口 | |
–protocol | 指定协议 | |
–database DATABASE,-D | 指定登录之后的默认仓库 | |
–compress | 客户端和服务器端直接的数据传输压缩 | |
–version,-V | 显示版本号 | |
–ssl-ca=/path/to/ssl_ca_file | 指定受信任的CA证书 | |
–ssl-capath=/path/to/ca_dir | 如果是有多个证书指定证书目录 | |
–ssl-cipher=ciper_list | 加密算法列表 | |
–ssl-key=/path/to/key_file | 指定自己的密钥 | |
–ssl-verify-server-cert | 验证服务器端证书 | |
-A,–no-auto-rehash,–disable-auto-rehash | 关闭自动名称补全 | |
–html,-H | 输出格式为HTML格式 | |
–xml,-X | 输出格式为XML格式 | |
-e SQL语句 | 在shell中执行sql语句 |
两种模式:交互模式和批处理模式
交互模式
mysql> use mydb
Database changed
mysql> show tables;
+----------------+
| Tables_in_mydb |
+----------------+
| testdb |
+----------------+
1 row in set (0.00 sec)
mysql> create table tb1 (id int,name char(30));
Query OK, 0 rows affected (0.05 sec)
mysql> show tables;
+----------------+
| Tables_in_mydb |
+----------------+
| tb1 |
| testdb |
+----------------+
2 rows in set (0.00 sec)
批处理模式
写sql的脚本
[root@localhost ~]# cat test.sql
create database mydb2;
create table mydb2.tb1 (id int,name char(30));
方法一:在交互式界面导入脚本
mysql> source /root/test.sql
方法二,直接导入
[root@localhost ~]# mysql -uroot -p < test.sql
Enter password:
交互模式命令
客户端命令
命令 | 含义 | 举例 |
---|---|---|
? | 查看客户端命令 | ? |
clear,\c | 提前结束执行(不执行) | select User,Host from user \c |
connect,\r | 重新连接到服务器 | |
delimiter,\d | 设置服务器端语句的结束符 | delimiter \ 使用‘\’作为语句的结束符 |
go,\g | 无论语句的结束符是什么,直接将此句送到服务器端执行 | select * from mysql.user \g |
ego,\G | 无论语句的结束符是什么,直接将此句送到服务器端执行,并纵向显示 | select * from mysql.user \G |
print,\p | 打印现在执行的语句 | |
quit,\q | 退出 | |
source,. | 执行sql的脚本 | source /root/test.sql; |
status,\s | 打印服务器的状态信息 | status |
system,! | 执行shell命令 | mysql> ! ls |
warning,\W | 语句执行结束后显示警告信息 | |
nowarning,\w | 语句执行结束后不显示警告信息 | |
rehash,# | 对于新建的对象支持不全功能 |
服务器端语句:有语句结束符
mysql> help KEYWORD # 查询帮助
提示符
提示符 | 含义 |
---|---|
mysql> | 输入命令 |
-> | 下一行 |
‘> | 单引号的后一半 |
“> | 双引号的后一半 |
`> | 反引号的后一半 |
/*> | 多行注释的后一半 /* */ |
mysqladmin 命令
语法格式
mysqladmin [options] command [command-options] [command [command-options]] ...
参数[options] | 含义 |
---|---|
-u username | 指定登录的用户名 |
-p password | 指定登录的数据库的密码 |
-h hostname | 指定数据库的IP地址 |
命令[command] | 含义 | 举例 |
---|---|---|
password [newpassword] | 修改密码 | mysqladmin -u root -p123 password '234' |
create databasename | 创建数据库 | mysqladmin create mydbb |
drop databasename | 删除数据库 | mysqladmin drop mydbb |
extended-status | 显示服务器的状态变量(命令数据统计) | mysqladmin extended-status |
ping | 检查mysql服务器是否在线 | mysqladmin ping |
processlist | 查看mysql服务器正在执行的进程列表 | mysqladmin processlist |
reaload | 重新加载授权表 | mysqladmin reaload |
refresh | 相当于执行flush-hosts和flush-logs | mysqladmin refresh |
start-slave | 启动复制,启动从服务器的复制线程(SQL/IO thread) | |
stop-slave | 停止复制 | |
shutdown | 关闭服务器进程 | mysqladmin shutdown |
status | 检查服务器的状态 | mysqladmin status |
flush-privileges | 刷新服务器的授权表 | mysqladmin flush-privileges |
flush-tables | 关闭打开的表 | mysqladmin flush-tables |
flush-threads | 重置线程池,将不用的线程删除 | mysqladmin flush-threads |
flush-status | 重置大多数的服务器状态变量 | mysqladmin flush-status |
flush-log | 二进制、中继日志滚动,错误日志关闭、打开 | mysqladmin flush-log |
flush-hosts | 清除主机的内部信息,服务器的解析缓存,解决服务器错误登录次数太多导致无法连接 | mysqladmin flush-hosts |
variables | 显示服务器的变量(定义服务器的工作属性) | mysqladmin variables |
version | 显示服务器的版本以及当前的状态信息 | mysqladmin version |
注:mysqladmin create mydbb
命令的全称mysqladmin -u root -p123 create mydbb
由于在~/.my.cnf
中设置了登录的用户名密码所以直接省略指定登录的用户名和密码。
打印服务器的状态
每2s显示mysql服务器的状态
[root@miner-k ~]# mysqladmin status --sleep 2
Uptime: 345080 Threads: 2 Questions: 537 Slow queries: 0 Opens: 92 Flush tables: 1 Open tables: 41 Queries per second avg: 0.001
Uptime: 345082 Threads: 2 Questions: 538 Slow queries: 0 Opens: 92 Flush tables: 1 Open tables: 41 Queries per second avg: 0.001
Uptime: 345084 Threads: 2 Questions: 539 Slow queries: 0 Opens: 92 Flush tables: 1 Open tables: 41 Queries per second avg: 0.001
Uptime: 345086 Threads: 2 Questions: 540 Slow queries: 0 Opens: 92 Flush tables: 1 Open tables: 41 Queries per second avg: 0.001
Uptime: 345088 Threads: 2 Questions: 541 Slow queries: 0 Opens: 92 Flush tables: 1 Open tables: 41 Queries per second avg: 0.001
每2s显示一次服务器的状态,显示3次
[root@miner-k ~]# mysqladmin status --sleep 2 --count 3
Uptime: 345101 Threads: 2 Questions: 543 Slow queries: 0 Opens: 92 Flush tables: 1 Open tables: 41 Queries per second avg: 0.001
Uptime: 345103 Threads: 2 Questions: 544 Slow queries: 0 Opens: 92 Flush tables: 1 Open tables: 41 Queries per second avg: 0.001
Uptime: 345105 Threads: 2 Questions: 545 Slow queries: 0 Opens: 92 Flush tables: 1 Open tables: 41 Queries per second avg: 0.001
保存登录数据库的密码
修改配置文件
[root@miner-k ~]# cat ~/.my.cnf
[client]
user = root
host = localhost
password = 123
注:该方法可以认为是设置了登录服务器的-h、-u、-p参数对应的值。
查看mysql数据库的状态
[root@miner-k ~]# mysqladmin status
Uptime: 344161 Threads: 1 Questions: 514 Slow queries: 0 Opens: 92 Flush tables: 1 Open tables: 41 Queries per second avg: 0.001
其他工具
mysqldump、mysqlimport、mysqlcheck