mysql存储引擎和数据类型(二)_Mysql

存储引擎:
1. 查看支持的存储引擎: 
     show engines \G;
      show variables like ‘have%';
2. 查看默认存储引擎: 
     show variables like ‘storage_engine%';
3. 修改默认的存储引擎: 
① 安装版可以通过向导的方式:
    ”开始”—> “程序” —> “MySQL” —> “MySQL Server 5.5” —> “MySQL Server Instance Configuration Wizard”,进入图形化实例配置向导的欢迎页面。在图形化实例配置向导中,选择单击”next”按钮,进入”MySQL选择用途类型”,在该页面中如果选择”Multifunctional Database”单选按钮,则默认存储引擎为InnoDB。如果选择”Non-Transaction Database Only”单选按钮,则默认为存储引擎为MyISAM。 
② 安装版或者免装版另一种修改默认引擎的方式:
    打开my.ini配置文件,关于[mysqld]组的内容中添加配置 default-storage-engine=INNODB

数据类型:
数据库管理系统提供了 整数类型、浮点数类型和定点数类型和位类型、日期和时间类型、字符串类型。

1、整数类型:
tinyint(1字节) smallint(2字节) mediumint(3字节) int和integer(4字节) bigint(8字节)
如果无法区分各个整数的表示范围,可以通过查看mysql的系统帮助查看相关信息。
 •mysql> help contents;
• mysql> help Data Types;
•mysql> help int;

2、浮点数类型、定点数类型、位类型:
 •浮点数类型:float(4字节) double(8字节) 如果需要精确到小数点后十位以上,就需要选择double
•定点数类型:dec(M,D)(M+2字节) decimal(M,D)(M+2字节)
要求小数精确度非常高时选择,通常表示金额等优先选择decimal
 •位类型:bit(1-8字节)
说明:decimal(18,4)总长18位,包括1位小数点和4位小数,也就是说18-1-4=13整数位只有13位 M:总长度 D:小数的位数 

3、日期和时间类型:
•data(4字节)
 •datatime(8字节)
 •timestamp(4字节)
 •time(3字节)
 •year(1字节)
每种日期和时间数据类型都有一个取值范围,如果插入的值超过了该类型的取值范围,则会插入默认值。
 •如果要表示年月日,一般会使用date
 •如果要表示年月日时分秒,一般会使用datetime
 •如果需要经常插入或者更新日期为当前系统时间,一般会使用timestamp类型
 •如果要表示时分秒,一般会使用time
 •如果要表示年份,一般会使用year,因为该类型比date占用更少的空间 

4、字符串类型:
char系列字符串:
 •char(M) M字节 M为0—255之间的整数
•varchar(M) M字节 M为0-65535之间的整数 长度是可变的
备注:UTF-8:一个汉字 = 3个字节,英文是一个字节;GBK: 一个汉字 = 2个字节,英文是一个字节 

text系列字符串类型:
 •tinytext (0-255字节)
 •text(0-65535字节)
 •mediumtext(0-167772150字节)
 •longtext(0-4294967295字节) 

binary系列字符串类型:
 •binary(M) M为字节 允许长度为0-M
•varbinary(M) M为字节 允许长度为0-M 

备注:这两个和前面的char 和 varchar类型,区别是char这组存储字符数据,binary可以存储二进制数据(图片、音乐、视频)
blob系列字符串类型:
•tinyblob 0-255字节
 •blob 0-2的16次方
 •mediumblob 0-2的24次方
•longblob 0-2的32次方
备注:这组和text类型,区别是这组可以存储二进制数据(图片、音乐、视频),text的一组只能存储字符数据

时间: 2024-09-27 17:27:49

mysql存储引擎和数据类型(二)_Mysql的相关文章

MySQL存储引擎总结_Mysql

前言 在数据库中存的就是一张张有着千丝万缕关系的表,所以表设计的好坏,将直接影响着整个数据库.而在设计表的时候,我们都会关注一个问题,使用什么存储引擎.等一下,存储引擎?什么是存储引擎? 什么是存储引擎? 关系数据库表是用于存储和组织信息的数据结构,可以将表理解为由行和列组成的表格,类似于Excel的电子表格的形式.有的表简单,有的表复杂,有的表根本不用来存储任何长期的数据,有的表读取时非常快,但是插入数据时去很差:而我们在实际开发过程中,就可能需要各种各样的表,不同的表,就意味着存储不同类型的

MySQL存储引擎MyISAM与InnoDB的9点区别_Mysql

虽然MySQL里的存储引擎不只是MyISAM与InnoDB这两个,但常用的就是它俩了.可能有站长并未注意过MySQL的存储引擎,其实存储引擎也是数据库设计里的一大重要点,那么博客系统应该使用哪种存储引擎呢?下面我们分别来看两种存储引擎的区别. MySQL存储引擎MyISAM与InnoDB的区别 一.InnoDB支持事务,MyISAM不支持,这一点是非常之重要.事务是一种高级的处理方式,如在一些列增删改中只要哪个出错还可以回滚还原,而MyISAM就不可以了. 二.MyISAM适合查询以及插入为主的

Mysql存储引擎MyISAM的常见问题(表损坏、无法访问、磁盘空间不足)_Mysql

本文为大家分享了解决Mysql存储引擎MyISAM常见问题的方法,供大家参考,具体内容如下 一.处理MyISAM存储引擎的表损坏 在使用MySQL,可能会遇到过MyISAM存储引擎的表损坏的情况.如以下情况: .frm被锁定不能修改 找不到.myi文件(索引文件) 意外结束记录 文件被毁坏 从表处理器得到错误nnn 解决办法1: 使用MySQL自带的myisamchk工具进行修复 打开bin目录,可以看到该工具   命令如下 myisamchk -r tablename r代表recover 或

如何选择合适的MySQL存储引擎_Mysql

MySQL支持数个存储引擎作为对不同表的类型的处理器.MySQL存储引擎包括处理事务安全表的引擎和处理非事务安全表的引擎: ◆ MyISAM管理非事务表.它提供高速存储和检索,以及全文搜索能力.MyISAM在所有MySQL配置里被支持,它是默认的存储引擎,除非你配置MySQL默认使用另外一个引擎. ◆ MEMORY存储引擎提供"内存中"表.MERGE存储引擎允许集合将被处理同样的MyISAM表作为一个单独的表.就像MyISAM一样,MEMORY和MERGE存储引擎处理非事务表,这两个引

基于Mysql存储引擎的深入分析_Mysql

MySQL有很多种存储引擎,针对不同的应用,可以为每张表选择合适的存储引擎,这样有助于提升MySQL性能.创建新闻表news: 复制代码 代码如下: CREATE  TABLE `sandbox`.`news` (      `id` INT NOT NULL AUTO_INCREMENT ,      `name` VARCHAR(45) NULL ,          `content` VARCHAR(45) NULL ,      `created` VARCHAR(45) NULL ,

《MySQL技术内幕:InnoDB存储引擎第2版》——1.3 MySQL存储引擎

1.3 MySQL存储引擎 通过1.2节大致了解了MySQL数据库独有的插件式体系结构,并了解到存储引擎是MySQL区别于其他数据库的一个最重要特性.存储引擎的好处是,每个存储引擎都有各自的特点,能够根据具体的应用建立不同存储引擎表.对于开发人员来说,存储引擎对其是透明的,但了解各种存储引擎的区别对于开发人员来说也是有好处的.对于DBA来说,他们应该深刻地认识到MySQL数据库的核心在于存储引擎. 由于MySQL数据库的开源特性,用户可以根据MySQL预定义的存储引擎接口编写自己的存储引擎.若用

shell批量修改MySQL存储引擎类型2种方法

MySQL存储引擎类型有哪些 MyISAM管理非事务表.提供高速检索,以及全文搜索能力. Memory存储引擎提供"内存中"表,MERGE存储引擎允许集合将被树立统一的MyISAM表做为一个单表.非事务表.可把多个myisam表构建为一个虚拟表,使得对这些表的查询仿佛在一个表上进行,提高了查询速度和修复效率,并节省了磁盘空间. InnoDB,BDB存储引擎提供事务安全表. EXAMPLE存储引擎是一个"存根"引擎,它不做什么.可以用这个引擎创建表,但没有数据被存储其

mysql dba系统学习(21)mysql存储引擎InnoDB

mysql存储引擎InnoDB 1,主体系结构: 默认7个后台线程,4个io thread(insert buffer.log.read.write),1个master thread(优先级最高),1个锁(lock)监控线程,1个错误监控线程.可以通过show engine innodb status来查看.新版本已对默认的read thread和write thread分别增大到4个,可通过show variables like 'innodb_io_thread%'查看. 存储引擎组成: 缓

mysql dba系统学习(20)mysql存储引擎MyISAM

mysql存储引擎MyISAM 1,创建myisam表 mysql> create table t (id int , name varchar(30) , msg varchar(100)) engine = MyISAM; mysql> show table status like "t" \G ; *************************** 1. row *************************** Name: t Engine: MyISAM