MySQL数据类型及sql模型及服务器变量
2018-06-18 01:02:58来源:未知 阅读 ()
.frm: 储存表的结构
.MYD: 储存数据,MYDATA的缩写
.MYI: 储存索引,MYIndex的缩写
. frm 储存表结构
.ibd 表空间(储存数据和索引)
1.应用程序连接服务器的方式
动态sql:通过函数或方法与数据库服务建立连接,然后通过协议将语句发送到服务端
嵌入式sql:通过api直接连接到服务器
--protocol=tcp|socket|pipe|memory (如果客户端服务端不在同一个机器上必须使用tcp,在同一个机器上uninx可以使用socket,windows可以使用pipe|memory)
启动mysql时实际用的是mysql_safe(以安全线程方式启动mysql)
mysql启动时会在多个地方找配置文件
/etc/my.cnf ––> /etc/myql/my.cnf ––> 安装目录下的/my.cnf ––> --defaults-extra-file=文件(指定配置文件) ––> 用户家目录下的/my.cnf 如果找到多个配置文件,最后找到的是最终生效的
#mysqld --help -verbose 查看mysqld 默认的参数
mysql.cnf配置文件中
[mysqld] 只对mysqld生效
[client] 对所有客户端生效
[mysql] 只对mysql生效
sql模型,mysql不同的处理处理机制:
ANSI QUOTES : 双引号""和反撇号``是相同的只能引用字段名,表名。单引号''只能引用字符串
IGNORE_SPACE : 在内建的函数中忽略多余的空白字符
STRICT_ALL_TABLES : 只要违反了数据规则都不允许,而且会返回错误
STRICT_TARNS_TABLES :向一个支持事物的表插入非法数据时是不允许的,而且会返回一个错误
mysql服务器变量
作用域划分:
全局变量:查看全局变量 show global variables
会话变量:查看会话变量 show [session] variables ,
会话一终止会话变量就失效了(简单的说会话变量作用当前会话,全局变量作用于所有会话),当会话变量和全局变量冲突时,会话变量覆盖全局变量
生效时间:
动态:立即生效,重启失效, 修改会话变量只对当前会话有效
修改全局变量,对当前会话无效 <(因为修改的是全局变量而会话变量还是以前的,当会话变量和全局变量冲突时,会话变量覆盖全局变量)>,只对新建立会话有效
静态:重启生效,静态的参数写到配置文件中或通过参数传递给mysqld
调用服务器变量(内置变量): @@
调用用户自定义变量: @
显示变量: select @@global.sql_mode 显示全局sql模型
select @@session.sql_mode 显示会话sql模型
设置变量: set {global|session} 变量名='value'
show character set ; 查看mysql支持的字符集
show collaction ; 查看mysql的排序规则
整型:
类型 占用字节 最小值 最大值
TINYINT 1 有符号-128,无符号0 有符号127,无符号255
SMALLINT 2 有符号-32768,无符号0 有符号32767,无符号65535
MEDIUMINT 3 有符号-8388608,无符号0 有符号8388607,无符号1677215
INT和INTEGER 4 有符号-2147483648,无符号0 有符号2147483647,无符号4294967295
BIGINT 8 有符号-9223372036854775808,无符号0 有符号9223372036854775807,无符号18446744073709551615
浮点型:
类型 字节
FLOAT(g,f) 4 或8
g:表示整体多少个字符
f:表示小数点后多少个字符
DOUBLE 8
说明:当需要精确到小数点后10位以上,使用DOUBLE类型
定点数:
类型 字节 最小值 最大值
DEC(M,D)和DECIMAL(M,D) M+2
说明:有效取值范围由M和D确定,浮点型存储的是近似值,定点数型存储的是字符串
位类型:
类型 字节 最小值 最大值
BIT(M) 1-8 BIT(1) BIT(64)
说明:字节数是M,取值范围为1-8
日期时间型:
类型 字节 最小值 最大值
DATE 4 1000-01-01 9999-12-31
DATETIME 8 1000-01-01 00:00:00 9999-12-31 23:59:59
TIMESTAMP 4 19700101080001 2038年某个时刻
TIME 3 -835:59:59 838:59:59
YEAR 1 1901 2155
字符串类型:
CHAR系列:
类型 字节描述
CHAR(M) M为0-255的整数 char列的长度被固定为创建表时所声明的长度
VARCHAR(M) M为0-65535的整数 VARCHAR列值长度可变 如果长度小于255,需要多占据一个字符作为结束符,如果超过255个字符需要占据两个字符作为结束符
TEXT类型:
类型 字节 描述
TINYTEXT 0-255 值的长度为+2个字节
TEXT 0-65535 值的长度为+2个字节
MEDIUMTEXT 0-167772150 值的长度为+3个字节
LOANGTEXT 0-4294967295 值的长度为+4个字节
说明:用于存储大量字符串
BINARY系列:
类型 字节描述
BINARY(M) 允许长度为0-M
VARBINARY(M) 允许长度为0-M
说明:存储二进制数据,VARBINARY长度可变
BLOB系列:
类型 字节
TINYBLOB 0-255
BLOB 0-2^16
MEDIUBLOB 0-2^24
LOANGBLOB 0-2^32
说明:存储大量的二进制数据
Enum("value1","value2",....) 最大值65535 该类型的列只可以容纳所列值之一或为空
Set("value1","value2",....) 最大值64 该类型的列可以容纳一组值或为空
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:忘记mysql登录密码密码怎么办
下一篇:MySQL学习(一)
- MySQL replace函数怎么替换字符串语句 2020-03-09
- PHP访问MySQL查询超时怎么办 2020-03-09
- mysql登录时闪退 2020-02-27
- MySQL出现1067错误号 2020-02-27
- mysql7.x如何单独安装mysql 2020-02-27
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash