# MySQL常用的命令
### 查看MySQL进程状态
```
show processlist; # 查看数据库的连接情况
show full processlist; # 查看正在执行的完整SQL语句,完整显示。
```
### 查看MySQL参数配置信息
```
show variables; # 查看数据库的参数信息
例如当前进程查看binlog是否开启:
mysql -uroot -paaaaaa -e 'show variables;' |grep log_bin
log_bin ON
log_bin_trust_function_creators OFF
sql_log_bin ON
实时修改mysql的缓冲大小为32M配置
mysql -uroot -paaaaaa -e 'set global key_buffer_size=1024*1024*32';
```
### 查看MySQL数据库运行状态信息
```
show status; # 查看当前会话的数据库状态信息
show global status; # 查看整个数据库运行状态信息,很重要,要分析并做好监控。
```
### 不登录数据库执行MySQL命令
1. 通过echo实现(常见用法)
```
echo 'show databases;'|mysql -uroot -paaaaaa
```
2. 通过cat实现(此法用的不多)
```
cat |mysql -uroot -p'aaaaaa' << EOF
show databases;
EOF
```
> 提示:此法适合多行字符串比较多的时候。
3. 通过mysql -e参数实现(常用)
```
mysql -u root -p'aaaaaa' -e "show databases;"
```
#### 实例
**mysql自动批量制作主从同步需要的语句**
```
cat |mysql -uroot -p'aaaaaa' << EOF
CHANGE MASTER TO
MASTER_HOST='192.168.1.101',
MASTER_PORT=3306,
MASTER_USER='rep',
MASTER_PASSWORD='rep',
MASTER_LOG_FILE='mysql-bin.00002'
MASTER_LOG_POS=429;
EOF
```
**mysql线程中,“大海捞针”**
平时登陆数据库show processlist;,发现结果经常超长,找自己要看的的比较困难,而且,SQL显示不全。
如果直接执行show full processlist那更是瞬间滚了N屏。找到有问题的SQL语句非常困难。
`mysql -uroot -paaaaaa -e "show full processlist;"|grep -iv Sleep`
过滤当前执行的SQL语句完整内容。
- 写在前面
- MySQL的使用
- MySQL多表同时删除方案
- MySQL跨表、多表更新SQL语句总结
- MySQL存储引擎
- 安装
- 常规方式编译安装MySQL
- 采用cmake方式编译安装MySQL
- 使用rpm包安装MySQL
- 使用yum方式安装MySQL
- 采用二进制方式免编译安装MySQL
- 多实例的安装
- 什么是多实例
- 多实例的作用、问题以及应用场景
- 多实例安装01【推荐】
- 多实例官方安装方案02
- 启动、用户和权限管理
- 单实例MySQL的启动和关闭的方法
- 设置及修改MySQL root用户密码
- 找回丢失的MySQL root用户密码
- 创建MySQL用户及用户权限管理
- 基础命令的操作
- MySQL库和表相关操作
- MySQL中的索引操作
- MySQL常用命令
- MySQL的错误代码
- MySQL复习秘籍
- 备份与恢复
- 备份
- 恢复
- mysqlbinlog命令
- 服务日志
- 主从复制
- 主从复制部署配置问题汇总
- 主从复制读写分离
- 灾难恢复
- 配置phpmyadmin连接多实例MySQL
- 其他相关
- Sphinx实验
- 中文分词技术
- MySQL语句大全
- 用户创建、权限、删除
- 数据库与表显示、创建、删除
- 表复制及备份还原
- 数据库表中数据操作
- 修改表的列与表名
- 修改表中的数据
- 查询表
- 日志
- 批量修改Mysql表引擎为InnoDB的方法
- 数据库抽象层 PDO
- PDO对象常用方法
- PDO 事务处理
- PDO 与 MySQLi 二者效率简单比较
- 大小写敏感性 lower_case_table_names
- CentOS7安装MySQL5.7密码查看与修改