一、mysql架构
1、 mysql高级简介
- 数据库内部结构和原理
- 数据库建模优化
- 数据库索引建立
- SQL语句优化
- SQL编程(自定义函数、存储过程、触发器、定时任务)
- mysql服务器的安装配置
- 数据库的性能监控分析与系统优化
- 各种参数常量设定
- 主从复制
- 分布式架构搭建、垂直切割和水平切割
- 数据迁移
- 容灾备份和恢复
- shell或python等脚本语言开发
- 对开源数据库进行二次开发
2、 mysql 的用户与权限管理
2.1、mysql的用户管理
2.1.1、创建用户
create user zhangsan identified by '123123';
2.1.2、user表
select host,user,authentication_string,select_priv,insert_priv,drop_priv from mysql.user;
host:表示连接类型
- % 表示所有远程通过 TCP方式的连接
- IP 地址 如 (192.168.1.2,127.0.0.1) 通过制定ip地址进行的TCP方式的连接
- 机器名 通过制定i网络中的机器名进行的TCP方式的连接
- ::1 IPv6的本地ip地址 等同于IPv4的 127.0.0.1
- localhost 本地方式通过命令行方式的连接 ,比如mysql -u xxx -p 123xxx 方式的连接。
user:表示用户名
同一用户通过不同方式链接的权限是不一样的。
password:密码
所有密码串通过 password(明文字符串) 生成的密文字符串。加密算法为MYSQLSHA1 ,不可逆 。
mysql 5.7 的密码保存到 authentication_string 字段中不再使用password 字段。
select_priv , insert_priv等
为该用户所拥有的权限。
2.1.3、设置密码
修改当前用户的密码:
set password =password('123456')
修改某个用户的密码:
update mysql.user set password=password('123456'