mysql数据库的优化
1、数据库设计:
1NF :就是具有原子性,不可分割.(只要使用的是关系性数据库,就自动符合)
2NF: 在满足1NF 的基础上,我们考虑是否满足2NF: 只要表的记录满足唯一性,也是说,你的同一张表,不可能出现完全相同的记录, 一般说我们在 表中设计一个主键即可.
3NF: 在满足2NF 的基础上,我们考虑是否满足3NF:即我们的字段信息可以通过关联的关系,派生即可.(通常我们通过外键来处理)
1、ddl (数据定义语言) [create alter drop]
2、dml(数据操作语言)[insert delete upate ]
3、select(重点)
4、dtl(数据事务语句) [commit rollback savepoint]
5、dcl(数据控制语句) [grant revoke]
show status命令
show status like 'Com%';等价于show session status like 'Com%'; //显示当前控制台的情况
show global status like 'Com%'; //显示数据库从启动到 查询的次数
1、show session status like 'Com_select'; //显示当前启动数据库执行多少次查询语句
2、show global status like 'Com_select'; //显示数据库启动到目前使用了多少次查询语句
3、show global status like 'Com_insert'; //显示数据库启动到目前使用了多少次插入语句
4、show global status like 'Com_uptate'; //显示数据库启动到目前使用了多少次更新语句
5、show global status like 'Com_delete'; //显示数据库启动到目前使用了多少次删除语句
常用的了解数据库的基本情况的命令:
show status like 'Connections';//显示连接数据库次数
show status like 'Uptime';//服务器工作了多长时间(单位:秒)
show status like 'Slow_queries';//慢查询多少次
show variables like 'long_query_time';//显示慢查询情况默认是10秒
set long_query_time=1;//设置成1秒(当查询时例如:select * from user(百万量数据)执行完用了3秒,就会被记录到慢查询日志中)
待续。。。。