欢迎来到天天文库
浏览记录
ID:8962346
大小:216.50 KB
页数:12页
时间:2018-04-13
《mysql之innodb存储引擎》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、InnoDB存储引擎·遵循ACID,支持commit,rollback和故障恢复,是事务安全的·行级锁定,Oracle-style读一致性改善了多用户并发操作性能·支持FOREIGNKEY参照完整性·轻松地与其他存储引擎表组合,例如与MEMORY表的JOINInnoDB在内存中维持着自己的缓冲区,用来缓存数据和索引。InnoDB的数据和索引存放在表空间中,表空间可以是共享的,也可以是独享的。独享表空间开启独享表空间模式之后InnoDB以table_name.idb命名在数据库目录之中保存新创建的表,数据和索引都保存在.idb文件,.frm仍然会创建用来保存元数据。即使使用独享表空间
2、,共享表空间也会存在,因为需要它存放一些undo信息和其他元数据信息。因此不能像MyISAM表文件那样在数据库目录间随便移动.idb文件,因为共享表空间里会保存数据库名,数据库间的移动应使用RENAMETABLE语句:RENAMETABLEdb1.tbl_nameTOdb2.tbl_name;.idb文件的恢复方法:1、ALTERTABLEtbl_nameDISCARDTABLESPACE;丢弃现有表空间文件2、复制备份的.idb文件至正确的目录3、ALTERTABLEtbl_nameIMPORTTABLESPACE;使用新的idb文件InnoDB启动选项和系统变量Variable
3、sDescriptioninnodb控制InnoDB的加载。OFF,ON,FORCEinnodb_additional_mem_pool_sizeInnoDB用于保存数据字典信息和其他内部数据结构的内存区大小,默认8M。超出时,使用操作系统内存并向errorlog写错误信息innodb_autoextend_increment自动增长的共享表空间写满时的增长大小innodb_autoinc_lock_modeauto_increment自动增长值的锁定模式innodb_buffer_pool_sizeInnoDB缓存数据和索引的缓冲区大小。默认是128M,数据库专用服务器可以将其设
4、置为物理内存的80%innodb_change_buffering开启修改缓存的类型inserts,deletes,purges,changes,all,noneinnodb_checksums开启校验和innodb_commit_concurrency同时刻可以进行提交操作的线程数。值为0允许任意多事务同时提交innodb_concurrency_tickets线程通过innodb_thread_concurrency并发线程数验证后,可以得到一个innodb_concurrency_tickets数量的访问次数,在该次数范围内不需要再进行并发线程数验证。innodb_data_
5、file_path指定数据文件,格式为file_name:file_size[:autoextend[:max:max_file_size]]autoextend和max选项只能用于最后一个数据文件innodb_data_home_dir数据文件根目录innodb_doublewrite启用后,InnoDB分两次存储数据,第一次写入buffer,第二次实际写入数据文件innodb_fast_shutdownInnoDB关闭模式,默认1为快速关闭(正常关闭)innodb_file_format新创建的InnoDB表的文件格式,Antelope和Barracudainnodb_file
6、_format_checkInnoDB是否检查共享表空间的fileformattag,tag大于当前InnoDB所支持版本时InnoDB启动出错,反之,InnoDB向tag写入当前innodb_file_format_max的值innodb_file_format_max向共享表空间fileformattag写入的值innodb_file_per_table开启独享表空间innodb_flush_log_at_trx_commit0:每隔一秒将日志写入logfile并flush到磁盘1:每次事务提交将日志写入logfile并flush到磁盘,默认2:每次事务提交将日志写入logfi
7、le,每隔一秒flush到磁盘innodb_flush_method设置flush模式fdatasync:InnoDB使用fsync()函数去更新日志和数据文件。默认。O_DSYNC:InnoDB使用O_SYNC模式打开并更新日志文件,用fsync()函数去更新数据文件。O_DIRECT:InnoDB使用O_DIRECT模式(跳过文件系统cache)打开数据文件,用fsync()函数去更新日志和数据文件innodb_force_recovery恢复模式0-6innod
此文档下载收益归作者所有