MYSQL基础

来源:互联网 发布:2017淘宝数据魔方 编辑:程序博客网 时间:2024/06/05 01:56

一、CHAR与VARCHAR

1.CHAR为固定空间储存,实际长度超过就会直接截断;VARCHAR为不固定长度,使用1-2个字节来储存长度信息;

2.CHAR可能导致空间浪费,但也有可能有效减少空间碎片,长度上限为255,VARCHAR则相反,上限为65535个字节;

二、INT(X)

X代表了INT整型的最大长度,无符号(unsigend)最大值为4294729693,即长度为10;

三、MySQL日志类型

1.错误日志 -log-err (记录的信息包括:服务启动或关闭,运行过程的错误或警告,事件调度器);

2.查询日志 -log

3.慢查询日志-log -slow-queries

4.更新日志-log update

5.二进制日志 -log -bin(mysqlbinlog查看二进制文件)

四、show profile

用于分析sql执行的性能,相对于explain, profile还可以查看执行的CPU/memory使用情况;

五、关于buffer size

1.对于myisam,要设置适合的key_buffer_size大小;因为myisam需要用到系统的缓存来缓存数据,因此需要为索引留出部分空间;

2.对于innodb,要设置合适的innodb_buffer_pool_size大小,因为innodb会把数据和索引都一起缓存起来,该值相对来说会应该会大一点;

六、delete和optimize

如果一个表经常有insert和delete操作,应该要定期进行optimize操作,这样可以有效的回收空间和整理碎片;

七、关于锁

myisam只支持表锁,innodb支持表级锁,它是通过在索引上加锁来实现的,因此只有在用索引来检索数据时才会用到行锁,否则仍使用表锁;

八、关于索引

1.myisam支持的索引类型包括:普通索引(index)、primary key(主键)、唯一性主键(unique key)、全文索引(full text);

2.innodb有两种索引:B+数索引,hash索引,innodb为索引组织表。

0 0