-6

Recently we have been testing an HA Database solution from a 3rd party provider. I have done some stress tests to see some metrics for Master & Slave status etc, however I would like to test the actual failover.

I need a way to test the failover or some other way to disable the Master DB but not from the 3rd party's interface as I cannot guarantee that they dont have checks when you disable the Master. By the way the database HA solution is on the cloud so server access is not possible.

Any suggestions?

P.S is dba stackexchange a better place to ask?

czioutas
  • 91
  • 5
  • 1
    Just stop one instance. – Michael Hampton Aug 19 '16 at 07:48
  • @MichaelHampton your answer is highly vague. Actual your answer is my question, how to stop it? I am stating that I do not want to stop the instance from the 3rd party's interface and cannot ssh to the server as it is a cloud db. – czioutas Aug 19 '16 at 07:55
  • 1
    Well, you failed to name the "3rd party", so no specific advice can be given. – Michael Hampton Aug 19 '16 at 07:56
  • @MichaelHampton I did not put the name of the 3rd party as that should not be relevant. The question is of a broader scope and as stated again the answer should not provide a solution based on the 3rd party's interface. – czioutas Aug 19 '16 at 07:57
  • 2
    "Just stop one instance" _is_ the generic answer. How you do that depends on the specifics of the setup. – Michael Hampton Aug 19 '16 at 07:59
  • The specifics of the setup is that it is a cloud DB and you dont have access to the server that it is hosted on. I am literally asking how to stop it by including the on top criteria, based on the experience of people around Server/DB admin – czioutas Aug 19 '16 at 07:59
  • 1
    Then you stop it via whatever method they provide. – Michael Hampton Aug 19 '16 at 08:00
  • Great please put that as an answer so I can accept it. Then the answer would be the same as the question very helpful for the community. – czioutas Aug 19 '16 at 08:22
  • Also maybe, you wanted to say that there is not direct solution outside of the 3rd party. Or that you are not aware if for example the instance can be stopped from within the MySQL or make the MySQL instance non responsive from the inside. Those would be the possible answers. The question required an answer outside of the 3rd party, saying that the parameter that I do not want to be involved was not specified is failure to understand the point of the question. – czioutas Aug 19 '16 at 08:25
  • 3
    I understood the point of the question perfectly well. The problem is that it is fatally flawed. If you're using some cloud provider, you can't do what you want without involving that provider in some way. – Michael Hampton Aug 19 '16 at 08:28

1 Answers1

1

There are likely several ways to do this.

  • Stop one instance is the obvius thing to do.

  • Block access to mysql (TCP port 3306) at the instance firewall.

  • Set the instance to read only may partially work (SET GLOBAL read_only = ON;)

My preference would always be to just unceremoniously dike one of the nodes out of service.

user9517
  • 114,104
  • 20
  • 206
  • 289