mysql的架构介绍
概述
MysqlLinux版的安装
详情可查看(超详细):https://blog.csdn.net/qq_45441466/article/details/116668534
查看mysql是否自启动: systemctl list-unit-files | grep mysqld
修改配置文件: vim /etc/my.cnf
在最后加上中文字符集配置: character_set_server=utf8
修改数据库的字符集:alter database mydb character set 'utf8';
修改数据表的字符集:alter table mytable convert to character set 'utf8'
Mysql的用户与权限管理
1、MySQL的用户管理
创建用户
创建zhang3用户,密码设置为Panghl$0
create user zhang3 identified by 'Panghl$0';
设置密码
修改当前用户的密码;
set password = password('123456')
修改某个用户的密码;
update mysql.user set password=password('123456') where user = 'zhang3';
flush privileges; #所有通过user表的修改,必须用这个命令才能生效。
修改用户
修改用户名
update mysql.user set user='zhang3' where user ='wang5';
flush privileges; #所有通过user表的修改,必须用这个命令才能生效。
删除用户
drop user zhang3
注意:不要通过delete from user u where user ='zhang3' 进行删除,系统会有残留信息
2、权限管理
授予权限
回收权限
查看权限
mysql逻辑架构
1、概述
和其他数据库相比,MySQL有点与众不同,它的架构可以在多种不同场景中应用并发挥良好作用。主要体现存储引擎的架构上。
插件是的存储引擎架构将查询处理和其他的系统任务以及数据的存储提取相分离。这种架构可以根据业务的需求和实际需要选择合适的存储引擎。
1、连接层
2、服务层
3、引擎层
4、存储层
2、利用show profile 查看sql的执行周期
修改配置文件/etc/my.cnf
新增一行:query_cache_type=1
重启mysql
先开启
mysql> show variables like '%profiling%'
mysql> set profiling=1;
select * from mytb12;
show profiles;#显示最近几次的查询
show prifile cpu,block io for query 1;
3、SQL执行顺序
手写:
机读:
Mysql存储引擎
1、如何命令查看
#看你的mysql现在已提供什么存储引擎;
mysql> show engines;
MyISAM和InnoDB(重点)
3、各个引擎简介
4、阿里巴巴、淘宝用哪个?