这两天一直在配置mysql数据库的多主一从的配置。其实现的思路是利用一个数据库启动两个实例(通过mysqld_multi),而这两个实例指向同一个数据库文件目录。但是配置过程中需要注意很多地方。
首先,由于启用了innodb,所以在启动数据服务的时候,服务进程会对innodb数据文件ibdata1加锁,导致第二个实例一致报错,在报了N多个 错误之后,放弃读取数据文件。所以在第二个实例启动时无法读取innodb的表数据,导致这种方案无法同步两个都包含innodb表的镜像。尝试采用指定 数据文件的方式(innodb_data_file_path=ibdata2:98M:autoextend,ibdata2是把ibdata1复制获 得的,注意大小应该和现有的数据文件大小一致,为大于等于数据文件大小的最小整数),启动多个实例,仍然报错,只是错误信息变成了innodb的log文 件无法读取,因此继续设置innodb_log_group_home_dir=test-innodb-log,指定日志文件的存储位置(启动时,提示 无法找到日志文件,自动建立新的日志文件ib_logfile1,ib_logfile0)。启动成功(./bin/mysqld_multi –config-file=./var/my.cnf –mysqld=mysqld_safe start 1,2)。 继续阅读
mysql多主一从数据库同步配置
发表评论