MySQL支持多种类型的SQL数据类型:数字类型,日期和时间类型,字符串(字符和字节)类型以及空间类型 数据类型描述使用如下约定:html
M表示整数类型的最大显示宽度。最大显示宽度为255.显示宽度与类型可包含的值范围无关,对于浮点和定点类型,M是能够存储的总位数。mysql
若是指定ZEROFILL数字列,MySQL会自动将该UNSIGNED 属性添加到列中。 容许该UNSIGNED 属性的数字数据类型也容许SIGNED。可是,默认状况下SIGNED会对这些数据类型进行签名,所以该 属性不起做用。正则表达式
SERIAL是别名BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE。sql
SERIAL DEFAULT VALUE在整数列的定义中是别名NOT NULL AUTO_INCREMENT UNIQUE。数据库
BIT[(M)] 位值类型。M表示每一个值的位数,从1到64.若是M省略,则默认值为1安全
TINYINT[(M)] [UNSIGNED] [ZEROFILL] 一个很是小的整数。签署的范围是 -128到127。无符号的范围是0到 255。服务器
https://dev.mysql.com/doc/refman/5.5/en/integer-types.html加密
BOOLEAN 这些类型是同义词 TINYINT(1)。值为零被视为false。非零值被认为是真的:spa
数字类型 | 描述 |
---|---|
TINYINT | 一个很是小的整数 |
SMALLINT | 一个小整数 |
MEDIUMINT | 一个中等大小的整数 |
INT | 标准整数 |
BIGINT | 一个大整数 |
DECIMAL | 定点数 |
FLOAT | 单精度浮点数 |
DOUBLE | 双精度浮点数 |
MySQL没有内置 BOOLEAN或BOOL数据类型。为了表示布尔值,MySQL使用最小的整数类型TINYINT(1)。换句话说,是 BOOLEAN和BOOL的同义词TINYINT(1).日志
在MySQL中,字符串能够包含从纯文本到二进制数据(如图像或文件)的任何内容。经过使用LIKE运算符, 正则表达式和全文搜索,能够基于模式匹配来比较和搜索字符串
字符串类型 | 描述 |
---|---|
CHAR | 固定长度的非二进制(字符)字符串 |
VARCHAR | 可变长度的非二进制字符串 |
BINARY | 固定长度的二进制字符串 |
VARBINARY | 可变长度的二进制字符串 |
TINYBLOB | 一个很是小的BLOB(二进制大对象) |
BLOB | 一个小BLOB |
MEDIUMBLOB | 一个中等大小的BLOB |
LONGBLOB | 一个大BLOB |
TINYTEXT | 一个很是小的非二进制字符串 |
TEXT | 一个小的非二进制字符串 |
MEDIUMTEXT | 中等大小的非二进制字符串 |
LONGTEXT | 一个很大的非二进制字符串 |
ENUM | 枚举; 能够为每一个列值分配一个枚举成员 |
SET | 一套; 能够为每一个列值分配零个或多个SET成员 |
MySQL提供日期和时间类型以及日期和时间的组合。此外,MySQL支持 时间戳数据类型,用于跟踪表中一行的更改。若是您只想存储没有日期和月份的年份,则可使用YEAR数据类型。日期和时间类型表明的时间值 DATE, TIME, DATETIME, TIMESTAMP,和 YEAR。每一个时间类型都有一系列有效值,以及当您指定MySQL没法表示的无效值时可使用的“ 零 ”值。该TIMESTAMP类型具备特殊的自动更新行为
日期和时间类型 | 描述 |
---|---|
DATE | CCYY-MM-DD格式的日期值 |
TIME | hh:mm:ss格式的时间值 |
DATETIME | CCYY-MM-DD hh:mm:ss格式的日期和时间值 |
TIMESTAMP | CCYY-MM-DD hh:mm:ss 格式化的时间戳值 |
YEAR | 年份CCYY或YY 格式 |
空间数据类型 | 描述 |
---|---|
GEOMETRY | 任何类型的空间值 |
POINT | 一个点(一对XY坐标) |
LINESTRING | 曲线(一个或多个POINT 值) |
POLYGON | 一个多边形 |
GEOMETRYCOLLECTION | 一组GEOMETRY value |
MULTILINESTRING | 一组LINESTRING value |
MULTIPOINT | 一组POINT value |
MULTIPOLYGON | 一组POLYGON Value |
JSON自5.7.8版本以来,MySQL支持本机数据类型,容许您更有效地存储和管理JSON文档。本机JSON数据类型提供JSON文档和最佳存储格式的自动验证
备份数据库很是重要,这样您就能够恢复数据,并在发生问题时从新启动并运行,例如系统崩溃,硬件故障或用户错误地删除数据。在升级MySQL安装以前,备份也是必不可少的保护措施,它们可用于将MySQL安装转移到另外一个系统或设置复制从属服务器。
增量恢复是恢复在给定时间跨度内所作的更改。这也称为时间点恢复,由于它使服务器的状态达到给定时间。时间点恢复基于二进制日志,一般在备份文件彻底恢复以后,将备份文件还原到备份时的状态。而后,在二进制日志文件中写入的数据更改将做为增量恢复应用于重作数据修改,并使服务器达到所需的时间点。