ERROR 1047 (08S01): WSREP has not yet prepared node for application use

同事問三個節點的Galera Cluster中如果只剩一個節點了,那麼還能提供讀寫服務嗎?
分兩種情況:
一、節點正常關閉的情況
如果集羣中的兩個節點都正常關閉,集羣中剩餘的一個節點還是可以提供讀寫服務的。

MariaDB [(none)]> SHOW STATUS WHERE Variable_name IN 
( 'wsrep_local_state_uuid','wsrep_cluster_conf_id','wsrep_cluster_size', 'wsrep_cluster_status','wsrep_ready','wsrep_connected');
+--------------------------+--------------------------------------+
| Variable_name            | Value                                |
+--------------------------+--------------------------------------+
| wsrep_local_state_uuid   | 874d8e7e-5980-11e8-8c23-83493ba049c2 |
| wsrep_cluster_conf_id    | 30                                   |
| wsrep_cluster_size       | 1                                    |
| wsrep_cluster_status     | Primary                              |
| wsrep_connected          | ON                                   |
| wsrep_ready              | ON                                   |
+--------------------------+--------------------------------------+

二、節點異常退出的情況
如果集羣中的兩個節點都異常退出,集羣中剩餘的一個節點能提供讀寫服務嗎?
a).寫服務肯定是不能提供的。
b).集羣中剩餘的一個節點,能否提供讀服務,取決於wsrep_dirty_reads的設置。

MariaDB [(none)]> show variables like 'wsrep_dirty_reads';
+-------------------+-------+
| Variable_name     | Value |
+-------------------+-------+
| wsrep_dirty_reads | OFF   |
+-------------------+-------+
1 row in set (0.01 sec)

如果wsrep_dirty_reads設置爲OFF,讀取數據時會報ERROR 1047 (08S01)的錯誤。

MariaDB [(none)]> use test;
**ERROR 1047 (08S01): WSREP has not yet prepared node for application use** 

如果wsrep_dirty_reads設置爲ON,可以讀數據,但不能寫。

MariaDB [test]> show variables like 'wsrep_dirty_reads';
+-------------------+-------+
| Variable_name     | Value |
+-------------------+-------+
| wsrep_dirty_reads | ON    |
+-------------------+-------+
1 row in set (0.00 sec)

MariaDB [test]> select * from t2;
+----+
| id |
+----+
|  1 |
|  2 |
+----+
2 rows in set (0.00 sec)

MariaDB [test]> insert into t2 values(3);
ERROR 1047 (08S01): WSREP has not yet prepared node for application use
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章