问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

mysql如何使用事物日志ib

发布网友 发布时间:2022-04-27 06:48

我来回答

2个回答

懂视网 时间:2022-04-30 02:16

ib_logfile正如你所说,它是INNODB的REDO、UNDO日志,并不是备份用的日志。
MYSQL可以通过BINLOG来恢复,但这个ib_logfile没什么恢复的作用,它主要是在事务中起一个前滚或后滚的作用。

 

mysql的innodb中事务日志ib_logfile
事务日志或称redo日志,在mysql中默认以ib_logfile0,ib_logfile1名称存在,可以手工修改参数,调节
开启几组日志来服务于当前mysql数据库,mysql采用顺序,循环写方式,每开启一个事务时,
会把一些相关信息记录事务日志中(记录对数据文件数据修改的物理位置或叫做偏移量);
作用:在系统崩溃重启时,作事务重做;在系统正常时,每次checkpoint时间点,会将之前写入事务
应用到数据文件中。
引入一个问题:在m/s环境中,innodb写完ib_logfile后,服务异常关闭,会不会主库能用ib_logfile恢复数据,而
binlog没写导致从库同步时少少这个事务?从而导致主从不一致;
redo日志写入方式:
1.ib_logfile写入当前事务更新数据,并标上事务准备trx_prepare
2.写入bin-log
3.ib_logfile当前事务提交提交trx_commit
恢复方式:
如果ib_logfile已经写入事务准备,那么在恢复过程中,会依据bin-log中该事务是否存在恢复数据。
假设:
1)结束后异常,因没有写入bin-log,从库不会同步这个事务,主库上,重启时,在恢复日志中这个
事务没有commit,即rollback这个事务.
2)结束后异常,这会bin-log已经写入,从库会同步这个事务。主库依据恢复日志和bin-log,也正常恢复此事务
综上描述:bin-log写入完成,主从会正常完成事务;bin-log没有写入,主从库rollback事务;不会出现主从库不一致问题.
相关参数(全局&静态):
innodb_log_buffer_size
innodb_log_file_size
innodb_log_files_in_group
innodb_log_group_home_dir
innodb_flush_log_at_trx_commit
innodb_log_buffer_size:事务日志缓存区,可设置1M~8M,默认8M,延迟事务日志写入磁盘,
把事务日志缓存区想象形如"漏斗"状,会不停向磁盘记录缓存的日志记录,而何时写入通过参数
innodb_flush_log_at_trx_commit控制,稍后解释,启用大的事务日志缓存,可以将完整运行大事
务日志,暂时存放在事务缓存区中,不必(事务提交前)写入磁盘保存,同时也起到节约磁盘空间占用;
innodb_log_file_size:控制事务日志ib_logfile的大小,范围5MB~4G;所有事务日志ib_logfile0+
ib_logfile1+..累加大小不能超过4G,事务日志大,checkpoint会少,节省磁盘IO,但是大的事务日
志意味着数据库crash时,恢复起来较慢.
引入问题:修改该参数大小,导致ib_logfile文件的大小和之前存在的文件大小不匹配
解决方式:在干净关闭数据库情况下,删除ib_logfile,而后重启数据库,会自行创建该文件;
innodb_log_files_in_group:DB中设置几组事务日志,默认是2;
innodb_log_group_home_dir:事务日志存放目录,不设置,ib_logfile0...存在在数据文件目录下
innodb_flush_log_at_trx_commit:控制事务日志何时写盘和刷盘,安全递增:0,2,1
事务缓存区:log_buffer;
0:每秒一次事务缓存区刷新到文件系统,同时文件系统到磁盘同步,但是事务提交时,不会触发log_buffer到文件系统同步;
2:每次事务提交时,会把事务缓存区日志刷新到文件系统中去,且每秒文件系统到磁盘同步;
1:每次事务提交时刷新到磁盘,最安全;
适用环境:
0:磁盘IO能力有限,安全方便较差,无复制或复制延迟可以接受,如日志性业务,mysql损坏丢失1s事务数据;
2:数据安全性有要求,可以丢失一点事务日志,复制延迟也可以接受,OS损坏时才可能丢失数据;
1:数据安全性要求非常高,且磁盘IO能力足够支持业务,如充值消费,敏感业务;

mysql的innodb中事务日志ib_logfile

标签:

热心网友 时间:2022-04-29 23:24

,查看Mysqld(/var/log/mysqld.log)日志,发现以下错误:
InnoDB: Error: log file /usr/local/mysql/data/ib_logfile0 is of different size 0
5242880 bytes
InnoDB: than specified in the .cnf file 0 104857600 bytes!
030826 1:42:15 Can't init databases
030826 1:42:15 Aborting

2,解决办法
"
If you want to change the number or the size of your InnoDB log files, you
have to shut down MySQL and make sure that it shuts down without errors.
Then copy the old log files into a safe place just in case something went
wrong in the shutdown and you will need them to recover the database. Delete
then the old log files from the log file directory, edit my.cnf, and start
MySQL again. InnoDB will tell you at the startup that it is creating new log
files.
"

在你修改my.cnf的innodb_log_file_size参数前,请先停止mysql服务程序的运行(mysql的停止没有出现任何错误),并把/var/lib/mysql目录下的ib_logfile0、ib_logfile1、ib_logfile2等之类的文件移除到一个安全的地方(旧日志文件的保留是为了防止意外的出现),以便Mysql重启后可以将新的ib_logfile0之类日志文件生成到/var/lib/mysql目录下。如果没有什么意外,旧的日志文件可以删除。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
女人脚出汗有酸味是怎么回事 脚的酸味是什么原因 请问南充有奥迪4S店或者奥迪专修店吗?电话号码是多少? ...不爱我了,对我已经死心了!我该怎么做,真的很爱她,好想挽回,我也不... 烂板凳的意思是什么 爸爸过世几个月了,为什么还梦见爸爸还没埋葬呢,看见爸爸的尸体_百度知 ... 眼睛结膜炎痒怎么办 结膜炎眼睛痒怎么缓解 结膜炎眼角痒怎么办 苹果电脑下载什么编辑器适合mac的视频剪辑软件有哪些 冷凝器清洗 本人小白,刚接触linux和mysql,请问初始化之后报这个错是啥意思?怎么解... 网络编程中xml文件有什么作用呀? MySql启动错误:MySQL Daemon failed to start. 合肥华美管道疏通机(冷凝器清洗机) xml在编程中的作用有多大 ...error occurred trying to start MySQL Daemon. 专业中央空调清洗机如何清洗冷凝管? mysql安装到最后就卡在那里,有.err 高手请帮我,如下 用什么编写xml文档 冷凝器清洗机价格 关于MySQL的问题:描述当my.ini中的default-storage-engine=MyISAM 时... 冷凝器管道疏通高压清洗机价格多少钱 什么是网页XML编程 启动mysql失败,提示错误1067,进程意外终止。 中央空调冷凝器自动清洗机 .xml是什么文件 对编程的有什么用 mysql #1033 错误 中央空调冷凝器自动清洗机? XML编程:XML的解析器 近来刚学python,在xml文件中如何编程遍历所有结点的标签?求请教,万分... 用mysql的时候出现1033-Incorrect information in file:“.\数据库... xml编程:DTD文档的定义之通配符案例详解 xml文档是用什么编写的啊?可以用记事本编写吗? 冷水机一般多久清洗一次 mysql服务启动不了,下面是mysql的错误日志 计算机编程当中的XML文件是干什么用的?一直不太明白谁能举个例子 ...ibdata1、ib_logfile0、ib_logfile1,但是没有my.ini, XML文件的java有哪些操作 化工行业使用高压清洗机器是高危行业吗,属于几类职业? MySQL无法启动: InnoDB Error:unable to create temporary file_百度... 求高一所有关于三角函数,三角行的公式 高一有关三角函数的所有公式? 高一数学 三角函数那得 重要的公式 例题 说下 高一数学三角函数公式一与公式二的区别 求高一数学所有公式!!~~~ 高一数学三角函数恒等式 香蕉可以放在冰箱里保鲜么 香蕉可以放冰箱保鲜吗 香蕉能放冰箱里保鲜吗