您的位置:首页 > 其它

rs使用验证,ken的小功能

2015-12-01 15:45 323 查看
用非sa的用户ken登录,如果ken拥有create的权限,那么他也应该拥有alter和drop的权限。这里是对这一性能的验证。

使用sa用户登录rs,创建ken用户,并给他create的权限。

[jieniz@replinuxb10 rs_sync_rep_mats_hp]$ isql -U sa -P Sybase123 -S REPQ2_14638_REP -I interfaces
1> create user ken set password sybase
2> go
User 'ken' is created.
1> grant create object to ken
2> go
Permission granted to user 'ken'.
1> exit

用ken用户登录,使用create,alter,drop的功能。

[jieniz@replinuxb10 rs_sync_rep_mats_hp]$ isql -U ken -P sybase -S REPQ2_14638_REP -I interfaces
1> create replication definition REPDEF with primary at ETLWIN08SP2X64CN.PDB
2> with all tables named TEST(id int, msg char(300)) primary key (id)
3> go
Msg 15094, Level 12, State 0:
Server 'REPQ2_14638_REP':
ETLWIN08SP2X64CN.PDB is not defined to the Replication Server.

这里可以看到create功能失败,因为ETLWIN08SP2X64CN.PDB这个route不存在,所以我们可以用admin who这个命令来查看一下现在活跃的route有哪些,然后使用一个活跃的route来创建replication definition。

1> admin who
2> go
Spid Name State
Info
---- --------------- --------------------
------------------------------------------------------------
34 DSI EXEC Awaiting Command
101(1) repq3_14638.tdb3
22 DSI Awaiting Message
101 repq3_14638.tdb3
26 DIST Awaiting Wakeup
101 repq3_14638.tdb3
32 SQT Awaiting Wakeup
101:1 DIST repq3_14638.tdb3
17 SQM Awaiting Message
101:1 repq3_14638.tdb3
16 SQM Awaiting Message
101:0 repq3_14638.tdb3
35 REP AGENT Awaiting Command
repq3_14638.tdb3
36 DSI EXEC Awaiting Command
103(1) repq0_14638.tdb1
23 DSI Awaiting Message
103 repq0_14638.tdb1
27 DIST Awaiting Wakeup
103 repq0_14638.tdb1
33 SQT Awaiting Wakeup
103:1 DIST repq0_14638.tdb1
19 SQM Awaiting Message
103:1 repq0_14638.tdb1
18 SQM Awaiting Message
103:0 repq0_14638.tdb1
8 REP AGENT Awaiting Command
repq0_14638.tdb1
21 RSI Awaiting Wakeup
REPQ4_14638_REP
20 SQM Awaiting Message
16777318:0 REPQ4_14638_REP
37 RSI USER Awaiting Command
REPQ4_14638_REP
24 dSUB Active

6 dCM Awaiting Message

14 dAIO Awaiting Message

28 dREC Sleeping
dREC
15 dDELSEG Awaiting Message

47 USER Active
ken
5 dALARM Awaiting Wakeup

29 dSYSAM Sleeping

我们使用repq3_14638.tdb3这个route来验证对replication definition的操作。

1> create replication definition ken_test_rd with primary at repq3_14638.tdb3
2> with all tables named ken
3> (c1 int, c2 char(10))
4> primary key(c1)
5> go
Replication definition 'ken_test_rd' is created.
1> alter replication definition ken_test_rd replicate all columns
2> go
Replication definition 'ken_test_rd' is altered.
1> drop replication definition ken_test_rd
2> go
Replication definition 'ken_test_rd' is dropped.
1>

这里有一个很有意思的事情,就是,开发的测试的角度问题。我接到这个任务的时候,首先想到的是,在创建ken这个用户的时候,给他直接赋予alter和drop的权限,但是其实我并不能给ken赋权限,我甚至不能创建ken,因为我是测试,我只需要测试软件是不是有这个功能(即ken能不能进行alter和drop),我需要写的是这样一个测试用例。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: