SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 12.03.2012 15:20:23

dkuser
Участник
Зарегистрирован: 12.03.2012
Сообщений: 2

Проблемы с межбазовым truncate при репликации.

Здравствуйте.

Не работает row-репликация при использования межбазового truncate.

Указана база для репликации 'rep'. Запросы вида:
1) delete from rep.*
2) insert into rep.* values(..)
3) update rep.* set ...
попадают в бинлог.

Единственный запрос который не попадает это "truncate rep.*".  Следствием является duplicate key.
Подскажите решение проблемы.
Решения которые вижу - это полная репликация всех бд, или skip-error, но надеюсь до этого не дойдёт.

MySql 5.5.18-55 (Percona Version)
Ubuntu 11.10 (GNU/Linux 3.0.0-16-server x86_64)

Ниже лог запросов, там показано что при truncate позиция бинлога не изменяется.


mysql> SHOW VARIABLES LIKE '%binlog%';
+-----------------------------------------+----------------------+
| Variable_name                           | Value                |
+-----------------------------------------+----------------------+
| binlog_cache_size                       | 32768                |
| binlog_direct_non_transactional_updates | OFF                  |
| binlog_format                           | ROW                  |
| binlog_stmt_cache_size                  | 32768                |
| innodb_locks_unsafe_for_binlog          | OFF                  |
| max_binlog_cache_size                   | 18446744073709547520 |
| max_binlog_size                         | 1073741824           |
| max_binlog_stmt_cache_size              | 18446744073709547520 |
| sync_binlog                             | 0                    |
+-----------------------------------------+----------------------+
9 rows in set (0.00 sec)

mysql> SHOW MASTER STATUS;
+--------------+----------+--------------+------------------+
| File         | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+--------------+----------+--------------+------------------+
| mysql.000001 |      421 | rep          |                  |
+--------------+----------+--------------+------------------+
1 row in set (0.00 sec)

mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> insert into rep.tt values (1);
Query OK, 1 row affected (0.00 sec)

mysql> SHOW MASTER STATUS;
+--------------+----------+--------------+------------------+
| File         | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+--------------+----------+--------------+------------------+
| mysql.000001 |      591 | rep          |                  |
+--------------+----------+--------------+------------------+
1 row in set (0.00 sec)

mysql> delete from rep.tt;
Query OK, 1 row affected (0.00 sec)

mysql> SHOW MASTER STATUS;
+--------------+----------+--------------+------------------+
| File         | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+--------------+----------+--------------+------------------+
| mysql.000001 |      761 | rep          |                  |
+--------------+----------+--------------+------------------+
1 row in set (0.00 sec)

mysql> insert into rep.tt values (1);
Query OK, 1 row affected (0.00 sec)

mysql> SHOW MASTER STATUS;
+--------------+----------+--------------+------------------+
| File         | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+--------------+----------+--------------+------------------+
| mysql.000001 |      931 | rep          |                  |
+--------------+----------+--------------+------------------+
1 row in set (0.00 sec)

mysql> truncate rep.tt;
Query OK, 0 rows affected (0.00 sec)

mysql> SHOW MASTER STATUS;
+--------------+----------+--------------+------------------+
| File         | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+--------------+----------+--------------+------------------+
| mysql.000001 |      931 | rep          |                  |
+--------------+----------+--------------+------------------+
1 row in set (0.00 sec)
 

Отредактированно dkuser (12.03.2012 15:24:28)

Неактивен

 

#2 12.03.2012 18:07:50

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Проблемы с межбазовым truncate при репликации.

Наверное это нужно на bugs.mysql.com

Неактивен

 

#3 13.03.2012 10:02:15

dkuser
Участник
Зарегистрирован: 12.03.2012
Сообщений: 2

Re: Проблемы с межбазовым truncate при репликации.

Спасибо, попробую обратиться

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson