存储引擎,也被称为表类型;
MyISAM:无事务,表锁
.frm:表结构定义文件
.MYD:表数据
.MYI:索引
InnoDB:事务,行锁
.frm:表结构
.ibd:表空间(数据和索引)
SHOW ENGINES;
SHOW TABLE [LIKE] 可以用来查看表属性;
SHOW TABLE STATUS LIKE ‘tb1’\G (这个会用的非常多)
程序语言连接数据的方式:
动态SQL:通过函数或方法与数据库服务建立连接;
嵌入式SQL
DBA:
开发DBA:数据库设计、SQL语言、存储过程、存储函数、触发器
管理DBA: 安装、升级、备份、恢复、用户管理、权限管理、监控、性能分析、基准测试
Developing With MySQL
MySQL data types
数值型
精确数值
int
decimal
近似数值
float(M,N)
double
real
字符型
定长
CHAR(M) M characters 最多255个
变长
VARCHAR(M) 多占用1个 最多65535个, 例如VARCHAR(3),最多存3个字符,但占用4个字节,最后一个最为结束符;
TINYTEXT 多占用1个 最多255个字节
TEXT 多占用2个 最多65535个字节
MEDIUMTEXT多占用3个 最多16777215个字节
LONGTEXT 多占用4个 最多4294967295个字节
日期时间型
date:CCYY-MM-DD
time:hh:mm:ss
datatime:CCYY-MM-DD hh:mm:ss
timestampCCYY-MM-DD hh:mm:ss
ENUM(枚举):
SET(集合):
数据类型:
1、存入的值类型
2、占据的存储空间
3、定长还是变长
4、如何比较及排序
5、是否能够索引
SHOW CHARACTER SET;
可以用来查看支持的字符集
SHOW COLLATION;
查看所有支持的排序规则
AUTO_INCREMENT:整型、主键或唯一键、无符号
SQL模型:
MySQL服务器变量
作用域,分为两类:
全局变量
SHOW GLOBAL VARIABLES
会话变量
SHOW [SESSION] BARIABLES
生效时间,分为两类:
动态:即时修改
静态:写在配置文件中
通过参数传递给mysqld
动态调整参数的生效方式:
全局:对当前会话无效,只对新建立会话有效;
会话:即时生效,但只对当前会话有效;
服务器变量:@@变量名
显示:SELECT
设定:SET GLOBAL|SESSION 变量名=’value’;
例如:
>SET GLOBAL sql_mode=’strict_all_tables’;
>SELECT @@session.sql_mode;
会发现没对当前会话生效
>SET SESSION sql_mode=’stict_trans_tables’;
>SELECT @@global.sql_mode;
会发现全局变量并没有改变
有时候也怀疑,自己追求的是不是正确的,或者说不应该这么极端。
虽然在这个地方写个人心情不好,不过反正自己写的估计没人看~~~