MySQL执行流程
第一步: 连接器
如果在Linux操作系统里使用MySQL , 首先要连接MySQL服务
# -h 指定 MySQL 服务得 IP 地址,如果是连接本地的 MySQL服务,可以不用这个参数;
# -u 指定用户名,管理员角色名为 root;
# -p 指定密码,如果命令行中不填写密码(为了密码安全,建议不要在命令行写密码),就需要在交互对话里面输入密码
mysql -h$ip -u$user -p
MySQL是基于TCP协议进行传输的,连接过程需要先经过TCP三次握手,如果MySQL服务正常进行,完成TCP连接建立之后,连接器验证用户名和密码.如果用户名密码正确,连接器会获取用户的权限.后续该用户在此连接里的任何操作,都会基于连接开始时读到的权限进行逻辑的判断.
因此一个用户已经建立了连接,即使中途权限被修改了,也不会影响已经存在的连接权限.
mysql> show processlist;
+------+-----------------+---------------------+----------------+---------+---------+------------------------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+------+-----------------+---------------------+----------------+---------+---------+------------------------+------------------+
| 5 | event_scheduler | localhost | NULL | Daemon | 1108032 | Waiting on empty queue | NULL |
| 3384 | root | 152.136.50.60:46618 | college | Sle