但是读写分离必然引发主从复制,试想一共有 10 张票,买了 1 张票,读的时候如果还是读到 10 张余票就不对了,因此需要主从复制,再读的时候,就只能读到 9 张余票了;
利用mysql proxy来实现的。
MySQL Proxy最强大的一项功能是实现“读写分离(Read/Write Splitting)”。基本的原理是让主数据库处理事务性查询,而从数据库处理SELECT查询。数据库复制被用来把事务性查询导致的变更同步到集群中的从数据库。 当然,主服务器也可以提供查询服务。使用读写分离最大的作用无非是环境服务器压力。
你创建一个存储过程C先执行存储过程A,并得到返回值
再判断返回值执行存储过程B
例如:
mysql>\d //
mysql> create procedure test(v_name char(20),out v_id int)
-> BEGIN
->SELECT id into v_id from t1 WHERE name=v_name
->END
->//
mysql> create procedure test1(v_id int,out v_name char(20))
->BEGIN
->SELECT name into v_name from t2 where id=v_id
->END
->//
mysql>create procedure test2(inout v_name char(20))
->BEGIN
->DECLARE v_id int
->CALL test(v_name,v_id)
->CALL test1(v_id,v_name)
->END
->//
mysql>set @aa='xx‘//
Query OK, 0 rows affected (0.00 sec)
mysql>call test2(@aa) //
Query OK, 0 rows affected (0.01 sec)
mysql>select @aa//
+------+
| @aa |
+------+
| x2 |
+------+
1 row in set (0.00 sec)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)