Em execução no servidor 2008 R2 IIS 7.5, com um mestre / escravo do MySQL (também no servidor 2008 r2) e o WordPress 3.7. É apenas compatível com o wordpress 3.5.2? Se é assim, há algum outro plug-in para permitir uma configuração do mysql Mestre / escravo?
Isso é o que eu fiz até agora:
1. Eu copiei db.php para / wp-content / folder
2. Editou o arquivo wp-config.php para ter (não os endereços IP reais)
define ('DB_HOST', '192.168.1.198');
define ('DB_HOST_SLAVE', '192.168.1.198');
3. editou o db-config.php e colocou na raiz do site.
<?php
$wpdb->save_queries = false;
$wpdb->persistent = false;
$wpdb->max_connections = 10;
$wpdb->check_tcp_responsiveness = true;
$wpdb->add_database(array(
'host' => DB_HOST,
'user' => DB_USER,
'password' => DB_PASSWORD,
'name' => DB_NAME,
'write' => 1,
'read' => 1,
'dataset' => 'global',
'timeout' => 0.2,
));
$wpdb->add_database(array(
'host' => DB_HOST_SLAVE,
'user' => DB_USER,
'password' => DB_PASSWORD,
'name' => DB_NAME,
'write' => 0,
'read' => 1,
'dataset' => 'global',
'timeout' => 0.2,
));
Agora, quando eu trago o mestre para baixo, o site para de carregar, eu esperava que o escravo simplesmente colocasse o site em apenas leitura. Tudo o que vejo nos logs do php é tentar conectar-me ao 192.168.1.198, quando esperava que as leituras fossem reprovadas no escravo se ele não conseguisse se conectar ao 192.168.1.199. Este é o erro
WordPress database error 2013-12-26 19:25:40 Can't select global__w -
'referrer' => 'blah.com/wp-admin/',
'server' => ,
'host' => 192.168.1.198,
'error' => ,
'errno' => 0,
'tcp_responsive' => ,
'lagged_status' => 3 for query SELECT option_value FROM wp_options WHERE option_name = 'db_upgraded' LIMIT 1 made by get_option
Agora, se eu editar o db-config.php para ser assim
<?php
$wpdb->save_queries = false;
$wpdb->persistent = false;
$wpdb->max_connections = 10;
$wpdb->check_tcp_responsiveness = true;
$wpdb->add_database(array(
'host' => DB_HOST_SLAVE,
'user' => DB_USER,
'password' => DB_PASSWORD,
'name' => DB_NAME,
'write' => 0,
'read' => 1,
'dataset' => 'global',
'timeout' => 0.2,
));
Eu consigo que o site apareça quando o master está inativo, MAS se o escravo desce, todo o site desce. Ou seja, se o mestre está em cima e o escravo está em baixo, o site está em baixo.