3.1 杂项配置
3.1.1 sql_mode
sql_mode是个很容易被忽视的变量,默认是空值,在这种设置下是可以允许一些非法操作的,比如允许一些非法数据的插入。在生成环境下必须将这个值设置为严格模式,所以开发、测试环境的数据库也必须要设置。这样在开发测试阶段就可以发现问题。
show variables like 'sqlmode';
3.2 底层架构
3.2.1 利用show profile 查看sql的执行周期
-
修改配置文件
vim /etc/my.cnf
,在最后加上中文字符集配置query_cache_type=1
-
重新启动mysql
[root@localhost ~]# systemctl restart msqld
-
开启
mysql> show variables like '%profiling%'; mysql> set profiling=1;
-
执行查询语句
mysql> select * from mytbl2 where id = 2;
-
显示最近的几次查询
mysql> show profiles;
-
选择要查询的
# 查看程序的执行步骤 show profile cpu,block io for query 执行编号