Jump to content
Sign in to follow this  
alexvaz

PHP + MySQL com replicação

Recommended Posts

alexvaz

Boa noite.

Preciso fazer um trabalho utilizando replicação de base de dados.

Para isso estou a utilizar o MySQL com o método master/slave.

Até aqui tudo bem. Agora preciso fazer uma aplicaçao em php, um sistema de login simples, para demonstrar que quando um falha o outro assegura o serviço.

A minha dúvida é a seguinte, é suposto apenas com a configuração do master/slave a aplicação em PHP ir buscar os dados ao salve se o master não estiver disponível ou é a aplicação que deve implementar isso? (caso haja uma falha na ligação, ligar-se ao slave)???

Alguém me sabe responder a isto?

Share this post


Link to post
Share on other sites
mad16v

Tu é que tens de testar a ligação ao Master, e caso falhe tentar a ligação ao slave.

EXEMPLO:

Dá uma olhada aqui => http://www.phpbuilder.com/columns/tanoviceanu20000912.php3?print_mode=1

e procura "Step Four: Alter Your Database Connection Routine"

-------------------------------------

para os preguiçosos em ler

-------------------------------------

/********************************************************
function db_connect_plus()

returns a link identifier on success, or false on error
********************************************************/
function db_connect_plus(){
    $username = "username";
    $password = "password";
    $primary = "10.1.1.1";
    $backup = "10.1.1.2";
    $timeout = 15;  // timeout in seconds

    if($fp = fsockopen($primary, 3306, &$errno, &$errstr, $timeout)){
        fclose($fp);
        return $link = mysql_connect($primary, $username, $password);
    }
    if($fp = fsockopen($secondary, 3306, &$errno, &$errstr, $timeout)){
        fclose($fp);
          return $link = mysql_connect($secondary, $username, $password);
    }

    return 0;
}

?>


Online Portfolio: Nulldesign

Share this post


Link to post
Share on other sites
djthyrax

Ainda não percebo muito disso mas acho que com exeptions tens uma solucao mais elegante...

Tirando a parte que não tens disso no php... :P

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Share this post


Link to post
Share on other sites
mad16v
Ainda não percebo muito disso mas acho que com exeptions tens uma solucao mais elegante...
PHP 5 tem um modelo de exceção similar ao de outras linguagens de programação.

E se ele estiver a utilizar o PHP4 ?


Online Portfolio: Nulldesign

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.