在mysql做了主从同步之后,php就需要进行读写分离 *** 作了。每次判断sql语句起始是否为select来区分去连接到哪台数据库服务器。查询分到从库,增加、删除、修改 *** 作都分到主库中去 *** 作。
myql主从同步配置:http://zixuephp.net/article-438.html
参考代码:
//截取SQL语句字符串 $str = strtolower(trim(substr($sql,0,6))); //如果是select,就连接slave从服务器 if($str == 'select'){ $slave_server='192.168.1.100:3306'; $dsn="mysql:host=$slave_server;dbname=test"; $user='root'; $pass='root'; $dbh=new PDO($dsn, $user, $pass); $res=$dbh->query($sql)->fetchAll(PDO::FETCH_ASSOC); }else{ //如果不是select,就连接master主服务器 $master_server='192.168.1.101:3306'; $dsn="mysql:host=$master_server;dbname=test"; $user='root'; $pass='123456'; $dbh=new PDO($dsn, $user, $pass); $res=$dbh->exec($sql); }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)