Tag Archives: slave

Percona XtraDB Cluster 5.6 與 GTIDs 的結合

Percona 的 Fernando Laudares 在「How to setup a PXC cluster with GTIDs (and have async slaves replicating from it!)」這篇裡提到了 Percona XtraDB Cluster 5.6 與 GTIDs 的配合方式。 傳統的 replication 的 binlog 的表示方式是 filename + position,這個是大家已經很熟悉的方式。 digraph { M1 [label="Master 1"]; M2 … Continue reading

Posted in Computer, Database, Murmuring, MySQL, Network, Software | Tagged , , , , , , , , , , , | Leave a comment

利用 pt-online-schema-change 同步 master 與 slave 的資料

在「Syncing MySQL slave table with pt-online-schema-change」這篇看到 master 與 slave 的資料不同步時,強制性同步的方法: pt-online-schema-change --alter 'ENGINE=INNODB' D=dbname,t=tblname 由於 pt-online-schema-change 的作法是建一個新的表格,然後把舊表格的資料寫過去,而這些行為會被 replicate 到新機器上,於是就同步了... 這招有趣 XDDD

Posted in Computer, Database, Murmuring, MySQL, Software | Tagged , , , , , , , , , , , | Leave a comment

AWS 提供跨區的 MySQL Read Replica...

Amazon RDS 將提供跨區的 MySQL read replication。看起來是針對 5.6+ 的版本提供這個功能... 有兩篇官方文章,一篇是 CTO 發了一篇「Expanding the Cloud: Enabling Globally Distributed Applications and Diaster Recovery」,另外一篇是官方網誌上的「Cross-Region Read Replicas for Amazon RDS for MySQL」。 用圖表示比較容易懂: 在 US-East 建立 MySQL master,另外在 EU 與 Tokyo 建立 slave replication。不知道中間的 traffic … Continue reading

Posted in AWS, Cloud, Computer, Database, Murmuring, MySQL, Network, Software | Tagged , , , , , , , , , | Leave a comment

Percona 的 Crash-resistant replication

前幾天 Percona 寫了篇文章說明自家專有的 Crash-resistant replication (用在 Percona Server 5.1 與 5.5):「Crash-resistant replication: How to avoid MySQL replication errors」。 這是 async replication 用在 slave server crash 時的保護機制。 當 slave 更新資料後,會更新 relay log 寫下「目前 apply 到哪個位置」(預設值是 relay-log.info),也就可以依照這個資訊計算出 replication lag 的時間。在 mytop 裡看到的 … Continue reading

Posted in Computer, Database, Murmuring, MySQL, Software | Tagged , , , , , | Leave a comment

Percona 提供的「Galera Cluster 前置作業」文件...

文章的標題「Follow these basics when migrating to Percona XtraDB Cluster for MySQL」寫的是 Percona XtraDB Cluster,不過基本上就是在講 Galera Cluster。 除了已知的 MyISAM 問題與 Primary Key 前提外,還有提到在從 MySQL server 轉移到 Galera Cluster 過程要怎麼做。 在這種情況下,會另外準備 server 跑 Galera Cluster (採先建後拆的策略)。新的 cluster 裡其中有一台會以 slave 身份向原來的 MySQL server … Continue reading

Posted in Computer, Database, Murmuring, MySQL, Software | Tagged , , , , , , | Leave a comment

用 Percona Xtrabackup 產生 Slave Server 的方式...

快四年前寫過「XtraBackup:線上備份 InnoDB 的好東西」這篇,但裡面的方法已經不能用了,所以再寫一篇給 Google,之後查資料比較方便... 現在可以參考 Percona 的官方文件「How to setup a slave for replication in 6 simple steps with Xtrabackup」。 先跑一次 full backup: innobackupex --user=yourDBuser --password=MaGiCiGaM --slave-info /path/to/backupdir 再跑 apply log:(其中的變數自己換掉) innobackupex --apply-log --use-memory=2G /path/to/backupdir/$TIMESTAMP/ 然後整個目錄丟到 slave server 上,用 CHANGE MASTER … Continue reading

Posted in Computer, Database, Murmuring, MySQL, Network, Software | Tagged , , , , , , | Leave a comment

MySQL 平行執行的 Replication...

「MySQL Replication – Multi-Threaded Slaves (Parallel Event Execution)」這篇在講 MySQL 5.6 的 multi-threaded replication。 在文章裡提到,在 5.6.3 之前的版本,MySQL replication 都是 single-threaded,所以當 master 可以充分發揮多 CPU 能力時,slave 仍然要一個更新跑完才會跑下一個更新。 舉例來說,假設 master server 上有兩個 thread 在跑: thread 1 正在執行 UPDATE table1 SET foo = 0 WHERE … Continue reading

Posted in Computer, Database, Murmuring, MySQL, Network, Software, WWW | Tagged , , , , , , , , , , , , , | Leave a comment