转 -- mater上面有数据 slave不同步 但是没有任何报错信息

原址如下:

http://vavahe.blog.51cto.com/3749305/929795

mater上面有数据   slave不同步 但是没有任何报错信息


问题 症状


mysql  5.1    做master  slave      slave状态正常,提示信息正常       用脚本导入数据后    mater上面有数据   slave不同步  但是没有任何报错信息。。。。  
脚本是这样的
LOAD DATA INFILE '/tmp/kpi_daily_user_data' REPLACE
INTO TABLE `:statistics_database`.`user_data`;
人工   create database  同步没有问题
插入数据也没问题
脚本就不行了
解决方法一
mysql 下
>show variables like 'binlog_format';
先执行以下看看是不是statement
我估计100%是statement
设置成ROW才能使用LOAD DATA INFILE
statement这种模式load data infile这种非语句级的插入是不会生效的
 
修改my.cnf
查找 binlog_format配置项

如果没有,则增加在mysqld下
如果有,就直接改成row
binlog_format="ROW" 
然后重启mysql 
master修改就可以了
slave不care这个问题
 
解决方法二
将脚本:
LOAD DATA INFILE '/tmp/kpi_daily_user_data' REPLACE
INTO TABLE `:statistics_database`.`user_data`;

改成:
use  statistics_database;LOAD DATA INFILE '/tmp/kpi_daily_user_data' REPLACE
INTO TABLE `:statistics_database`.`user_data`;
/先要use 数据库在load 才能实现同步
 
 
附:mysql同步模式
 
mysql的三种复制方式:① statement base replication      SBR
                               ② row base replication               RBR
                               ③  mixed-based replication            MBR
 
现在来比较以下 SBR 和 RBR 2中模式各自的优缺点:
SBR 的优点:
  • 历史悠久,技术成熟
  • binlog文件较小
  • binlog中包含了所有数据库更改信息,可以据此来审核数据库的安全等情况
  • binlog可以用于实时的还原,而不仅仅用于复制
  • 主从版本可以不一样,从服务器版本可以比主服务器版本高

SBR 的缺点:
  • 不是所有的UPDATE语句都能被复制,尤其是包含不确定操作的时候。
  • 调用具有不确定因素的 UDF 时复制也可能出问题
  • 使用以下函数的语句也无法被复制:
    * LOAD_FILE()
    * UUID()
    * USER()
    * FOUND_ROWS()
    * SYSDATE() (除非启动时启用了 --sysdate-is-now 选项)
  • INSERT ... SELECT 会产生比 RBR 更多的行级锁
  • 复制需要进行全表扫描(WHERE 语句中没有使用到索引)的 UPDATE 时,需要比 RBR 请求更多的行级锁
  • 对于有 AUTO_INCREMENT 字段的 InnoDB表而言,INSERT 语句会阻塞其他 INSERT 语句
  • 对于一些复杂的语句,在从服务器上的耗资源情况会更严重,而 RBR 模式下,只会对那个发生变化的记录产生影响
  • 存储函数(不是存储过程)在被调用的同时也会执行一次 NOW() 函数,这个可以说是坏事也可能是好事
  • 确定了的 UDF 也需要在从服务器上执行
  • 数据表必须几乎和主服务器保持一致才行,否则可能会导致复制出错
  • 执行复杂语句如果出错的话,会消耗更多资源

RBR 的优点:
  • 任何情况都可以被复制,这对复制来说是最安全可靠的
  • 和其他大多数数据库系统的复制技术一样
  • 多数情况下,从服务器上的表如果有主键的话,复制就会快了很多
  • 复制以下几种语句时的行锁更少:
    * INSERT ... SELECT
    * 包含 AUTO_INCREMENT 字段的 INSERT
    * 没有附带条件或者并没有修改很多记录的 UPDATE 或 DELETE 语句
  • 执行 INSERT,UPDATE,DELETE 语句时锁更少
  • 从服务器上采用多线程来执行复制成为可能

RBR 的缺点:
  • binlog 大了很多
  • 复杂的回滚时 binlog 中会包含大量的数据
  • 主服务器上执行 UPDATE 语句时,所有发生变化的记录都会写到 binlog 中,而 SBR 只会写一次,这会导致频繁发生 binlog 的并发写问题
  • UDF 产生的大 BLOB 值会导致复制变慢
  • 无法从 binlog 中看到都复制了写什么语句
  • 当在非事务表上执行一段堆积的SQL语句时,最好采用 SBR 模式,否则很容易导致主从服务器的数据不一致情况发生

另外,针对系统库 mysql 里面的表发生变化时的处理规则如下:
  • 如果是采用 INSERT,UPDATE,DELETE 直接操作表的情况,则日志格式根据 binlog_format 的设定而记录
  • 如果是采用 GRANT,REVOKE,SET PASSWORD 等管理语句来做的话,那么无论如何都采用 SBR 模式记录
注:采用 RBR 模式后,能解决很多原先出现的主键重复问题。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: librealsense-mater是一个开源的软件库,用于支持Intel RealSense深度相机的操作和应用程序开发。它提供了一组易于使用的API,让开发者可以轻松地访问相机的深度图像、彩色图像和红外图像等传感器数据。此外,librealsense-mater还提供了姿态跟踪、人脸识别、手势识别和表情检测等高级功能,以帮助开发者构建更丰富的交互式应用程序。 librealsense-mater的优势在于简化了与深度相机的通信和数据处理过程。它提供了高效的数据流传输和处理方式,使得开发者能够快速地从相机中获取图像数据,并进行复杂的图像分析和处理操作。同时,该软件库还支持多平台运行,包括Windows、Linux和macOS,以满足不同开发环境下的需求。 使用librealsense-mater,开发者可以利用深度相机的能力开发出各种应用。例如,可以通过深度图像来实现手势控制、室内导航和虚拟现实等交互体验;还可以利用深度传感器来进行人脸识别和表情检测,以实现更智能的人机交互。此外,librealsense-mater还支持多个深度相机同时操作,使得开发者能够构建更复杂的应用场景,如多摄像头系统和三维重建等。 总之,librealsense-mater是一个功能强大、易于使用的软件库,为开发者提供了访问和操作Intel RealSense深度相机的工具和接口。它的出现极大地简化了深度相机应用程序的开发过程,并为开发者提供了丰富的功能和灵活的应用场景。 ### 回答2: librealsense-mater是一个处理和使用Intel RealSense深度摄像头的开源软件库。它提供了一系列功能和工具,帮助开发人员在各种应用领域中使用RealSense摄像头。 通过librealsense-mater,开发人员可以轻松访问和操作深度图像、彩色图像和红外图像。此外,它还提供了对深度数据进行实时处理和分析的功能,包括物体测量、运动跟踪和手势识别等。 使用librealsense-mater,开发人员可以构建各种应用程序,包括虚拟现实、增强现实、机器人导航和人体姿势识别等。例如,在虚拟现实中,可以利用RealSense摄像头的深度感知能力,实现更真实的交互体验;在机器人导航中,可以利用深度图像进行环境建模和避障等。 此外,librealsense-mater还具有跨平台的特性,适用于Windows、Linux和macOS等操作系统。它提供了多种编程语言的封装,包括C++、Python和Java等,方便开发人员根据自己的偏好和需求进行开发。 总之,librealsense-mater是一个功能强大的开源软件库,为开发人员提供了丰富的功能和工具,帮助他们更好地利用Intel RealSense深度摄像头的能力,开发创新的应用程序。 ### 回答3: librealsense是一种开源的跨平台软件和硬件平台,用于实时感知和处理3D视觉、深度摄像和运动跟踪。它使用Intel RealSense深度摄像头来获取深度图像和其他传感器数据,并提供API和工具来处理和分析这些数据。 librealsense-mater则是librealsense的一个分支项目,它主要关注于深度摄像头的目标跟踪和定位功能。该项目的目标是提供一个简单易用的接口,使开发者能够利用深度摄像头的强大功能来实现目标跟踪和定位的应用程序。 librealsense-mater提供了一系列的功能,包括人脸识别、人体姿势估计、手势识别和物体检测等。开发者可以利用这些功能来创建各种应用,例如虚拟现实游戏、智能家居系统、机器人导航和安防监控等。 此外,librealsense-mater还支持多个平台,包括Windows、Linux和macOS,使开发者能够在不同的系统上使用相同的开发框架和工具。它还提供了各种编程语言的API,包括C++、Python和C#,以满足不同开发者的需求。 总的来说,librealsense-mater是一个功能强大、易于使用的深度摄像头跟踪和定位的开源项目,为开发者提供了丰富的功能和灵活的平台支持,促进了3D视觉和深度摄像技术的广泛应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值