GTID & GTID Replication Flashcards
True or False:
Split-brain is unavoidable.
False
there is also a built-in, automatic, split-brain protection mechanism.
Which statements are true about asynchronous replication:
a) The primary executes transactions, commits them and then they are later sent to the secondaries to be either re-executed or applied
b) It is a shared-nothing system, where all servers have a full copy of the data by default.
c) the Primary waits, at commit time, for the secondary to acknowledge that it has received the transaction
d) re-executed transactions are statement-based replication
e) applied transactions are statement-based replication
a) b) d)
The primary executes transactions, commits them and then they are later (thus asynchronously) sent to the secondaries to be either re-executed (in statement-based replication) or applied (in row-based replication).
Which statements are true about semi synchronous replication (pick 2):
a) messages exchanged between servers or messages exchanged between servers and the client application can occur before the source commits
b) the Primary waits, at commit time, for the secondary to acknowledge that it has received the transaction
c) It is a shared-nothing system, where all servers have a full copy of the data by default.
a) b)
messages exchanged between servers or messages exchanged between servers and the client application can occur before the source commits
the Primary waits, at commit time, for the secondary to acknowledge that it has received the transaction
Which statements are true about group replication (pick 3):
a) all read-write transactions commit only after they have been approved by the group
b) after read-write transaction is committed, the commit operation is a unilateral decision from the originating server
c) is formed by multiple servers and each server in the group may execute transactions independently at any time
d) Read-only transactions need no coordination within the group and commit immediately
a) c) d)
the commit operation is NOT a unilateral decision from the originating server
What is the correct sequence of events after a read-write transaction is committed:
a) a read-write transaction is ready to commit at the originating server
b) the corresponding write set (the unique identifiers of the rows that were updated).
c) either all servers in the group receive the transaction or none do
d) the server atomically broadcasts the write values (the rows that were changed)
e) If servers receive the transaction, then they all receive it in the same order with respect to other transactions that were sent before
f) All servers therefore receive the same set of transactions in the same order, and a global total order is established for the transactions.
a) –> d) –> b) –> c) –> e) –> f)
What is the correct sequence of events during the certification process:
a) the transaction that was ordered first commits on all servers
b) the transaction ordered second aborts is rolled back on the originating server
c) the transaction ordered second aborts
d) at the row-level, conflicts are detected by inspecting and comparing the write sets of two different and concurrent transactions
e) the transaction ordered second aborts is dropped by the other servers in the group
d) –> a) –> c) –> b) –> e)
True or False:
For applying and externalizing the certified transactions, Group Replication permits servers to deviate from the agreed order of the transactions if this does not break consistency and validity.
True
True or False:
Group Replication is an instant consistency system, meaning that all group members have the same data content at all times.
False
Group Replication is an eventual consistency system, meaning that as soon as the incoming traffic slows down or stops, all group members have the same data content.
True or False:
In single-primary mode, on the primary server, there is a small chance that concurrent, non-conflicting local transactions might be committed and externalized in a different order from the global order agreed by Group Replication
True
True or False:
In single-primary mode, transactions on secondaries are not always committed and externalized in the agreed order.
False
On the secondaries, which do not accept writes from clients, transactions are always committed and externalized in the agreed order.
In Group Replication, consensus takes place after:
a) the certification process
b) transaction is recorded in the relay log
c) transaction is executed
d) transaction is applied to the binlog
c)
https://dev.mysql.com/doc/refman/5.7/en/group-replication-summary.html
True or False:
in the event of an unexpected server exit, the primary server redirects clients to a different server
False
in the event of an unexpected server exit, those clients connected to it must be redirected, or failed over, to a different server. This is not something Group Replication attempts to resolve. A connector, load balancer, router, or some form of middleware are more suitable to deal with this issue.
Which is a use case for group replication (pick 3) :
a) Environments that require a very fluid replication infrastructure, where the number of servers has to grow or shrink dynamically and with as few side-effects as possible.
b) where downtime is not an issue
c) Writing to an entire group may prove more scalable under certain circumstances
d) to implement highly available shards, where each shard maps to a replication group.
a) c) d)
True or False:
If a server joins the group, it automatically brings itself up to date by fetching the missing state from an existing server.
true
True or False:
If a server leaves the group, the remaining servers notice that it has left and DBA must reconfigure the group.
False
If a server leaves the group, for instance it was taken down for maintenance, the remaining servers notice that it has left and reconfigure the group automatically.
Which is true about a view (pick 2):
a) Group members must agree on either the transaction commits or the current view.
b) reconfiguration of the group triggers a view change.
c) The list of online servers is referred to as a view.
b) c)
Group members must agree not only on transaction commits, but also on which is the current view
True or False:
It is possible for a member to go offline for a short time, then attempt to rejoin the group again before the failure detection mechanism has detected its failure, which can cause issues including possible data inconsistency.
True
It is possible for a member to go offline for a short time, then attempt to rejoin the group again before the failure detection mechanism has detected its failure, and before the group has been reconfigured to remove the member. In this situation, the rejoining member forgets its previous state, but if other members send it messages that are intended for its pre-crash state, this can cause issues including possible data inconsistency
True or False
From MySQL 5.7.22, servers are given a unique identifier when they join a group.
True
from MySQL 5.7.22, servers are given a unique identifier when they join a group. This enables Group Replication to be aware of the situation where a new incarnation of the same server (with the same address but a new identifier) is trying to join the group while its old incarnation is still listed as a member. The new incarnation is blocked from joining the group until the old incarnation can be removed by a reconfiguration. If Group Replication is stopped and restarted on the server, the member becomes a new incarnation and cannot rejoin until the suspicion times out.
Which are true about point-to-point communication channel (pick 4):
a) These connections use TCP/IP sockets.
b) connections are managed by the group communication engine
c) A member cannot create a suspicion of itself failing.
d) If a member does not receive messages from another member for 5 seconds, it suspects that the member has failed, and lists the status of that member as UNREACHABLE
e) each member has a point-to-point communication channel to each other member
a) b) d) e)
A member can also create a suspicion of itself.
Which 2 group sizes can tolerate 2 servers failing?
a) 4
b) 5
c) 6
d) 7
b) c)
group size of 4 can tolerate 1 failure.
group size of 7 can tolerate 3 failures.
Which 2 group sizes need 3 members to agree for majority?
a) 4
b) 5
c) 6
d) 7
a) b)
Groups of 6 and 7 need 4 members to agree to form consensus.
Which system variable:
Allows the current server to join the group even if it has a lower major version than the group.
–group-replication-allow-local-lower-version-join[={OFF | ON}]
Scope Global
Dynamic Yes
Default Value OFF
Which system variable:
Determines the interval between successive column values for transactions that execute on this server instance
–group-replication-auto-increment-increment=#
Scope Global
Dynamic Yes
Default Value 7
Which system variable:
Configures the server to bootstrap the group. This option must only be set on one server and only when starting the group for the first time or restarting the entire group
–group-replication-bootstrap-group[={OFF | ON}]
Scope Global
Dynamic Yes
Default Value OFF
Which system variable:
Indicates timeout, in seconds, that Group Replication waits for each of the components when shutting down.
–group-replication-components-stop-timeout=#
Scope Global
Dynamic Yes
Default Value 31536000
Which system variable:
Indicates the threshold value in bytes above which compression is applied to messages sent between group members
–group-replication-compression-threshold=#
If this system variable is set to zero, compression is disabled.
Scope Global
Dynamic Yes
Default Value 1000000