1)通过 SequoiaSQL-MySQL 实例创建 company 数据库以及数据表 employee,字段为(empno INT, ename VARCHAR(128), age INT),其中 empno 为主键自增;
mysql -h127.0.0.1 -uroot
create database company;
use company;
create table employee(
empno int auto_increment primary key,
ename varchar(128),
age int
);
2)写入表 company.employee 数据值为(empno:10001, ename:"Jacky", age:36);
insert into employee values (10001,"Jacky",36);
3)在 SequoiaDB Shell 中设置事务隔离级别为 RC(读已提交);
sdb
var db=new Sdb("localhost",11810);
db.updateConf( { transisolation: 1 }, { Global: true } );
4)登录 MySQL,开始事务,插入数据(ename:'lazhu', age:22),其中 empno 字段为自增字段,无需填写,执行插入后并提交事务。
begin;
insert into employee(ename,age) values ( "lazhu",22);
commit;
5)开始 MySQL 事务,更新 empno:10002 的记录年龄为 20( age:20 )并提交事务;
begin;
update employee set age=20 where empno=10002 ;
commit;
6)关闭 31820 数据节点;
sdbstop -p 31820
sdblist -t all -l -m local
7)开始 MySQL 事务,插入数据( empno:10003, ename:'Susan', age:32 )并提交事务;
insert into employee values (10003,'Susan',32);
8)启动 31820 数据节点;
sdbstart -p 31820
9)修改 11820 数据节点实例 id 为 1,修改 21820 数据节点实例 id 为 2,配置 11810 协调节点读取数据时的读取策略为优先使用数据节点实例 2,
后使用数据节点实例 1 ,重启节点使参数生效;
sdblist -l
sdb
var db = new Sdb("localhost", 11810);
db.updateConf( { instanceid: 1 }, { svcname: { "$in": [ "11820" ] } } );
db.updateConf( { instanceid: 2 }, { svcname: { "$in": [ "21820" ] } } );
db.updateConf( { preferedinstance: "2,1", preferedinstancemode: "ordered", preferedstrict: true }, { GroupName: "SYSCoord", svcname: "11810" } );
sdbstop -r data
sdbstart -r data
sdb
var db = new Sdb("localhost", 11810);
db.snapshot(SDB_SNAP_CONFIGS, { Role: "coord" }, { NodeName: "", preferedinstance: "" } );
阅读(929) | 评论(0) | 转发(0) |