SQL Anywhere 11 (Panorama) 评审指南 Part IV
2008-05-05 15:54
302 查看
例程可通过http://www.sybase.com/files/Technical_Documents/PanoramaRevGuide.zip下载
本文档中出现的SQL Anywhere 11在其它地方可能出现为SQL Anywhere Panorama。
镜像服务器上的转移报表功能
数据库镜像是三个数据库服务器的配置,分别运行在不同的计算机上,以维护独立的数据库和事务日志文件的拷贝。主服务器和镜像服务器分别维护着这些文件的备份,而第三个服务器,判定服务器,则用来在需要的时候决定上述两个服务器何时接管数据库。
为了能更充分利用硬件资源,SQL Anywhere 11支持连接至镜像服务器并执行查询。这可将可能会耗费很多资源的报表操作转移至镜像服务器,使主服务器能应对OLTP的压力。
只读镜像服务器例程
本例程演示了如何搭建服务器镜像,故障切换如何发生,以及如何使用镜像服务器达到只读目的。
1. 启动命令行工具,浏览至例程的ReadOnlyMirror目录,并运行setup.bat文件。
本脚本将初始化demo数据库并搭建镜像环境。
2. 运行arbiter.bat以启动判定服务器。
3. 运行server1.bat以启动主服务器。
命令行使用了-sm新选项。该选项用来提供备选镜像服务器名,当连接至只读镜像服务器时必须指定。-sn参数继续提供用来连接至主服务器的备选服务器名。
4. 运行server2.bat启动镜像服务器。
一旦所有的服务器均启动后,可在不同的服务器窗口中检查消息,或在状态文件(./Mirror/*.txt)中查看内容,找出哪个服务器是主服务器,哪个服务器是镜像服务器。
5. 在命令行中执行以下语句,启动Interactive SQL并连接至主服务器:
dbisql -c "uid=DBA;pwd=sql;eng=mirrordemo;links=tcpip"
6. 执行以下SQL语句查看连接的是哪个服务器(server1或server2):
SELECT PROPERTY( 'ServerName' ), DB_PROPERTY( 'ArbiterState' ),
DB_PROPERTY( 'MirrorState' ), DB_PROPERTY( 'PartnerState' );
主服务器名出现在结果集中。
7. 执行以下语句,将例程数据加入demo数据库中:
CREATE TABLE test ( col1 INTEGER, col2 CHAR(32) );
INSERT INTO test VALUES( 1, 'Hello from '+PROPERTY( 'ServerName' ) );
COMMIT;
8. 通过命令行中执行以下语句启动另一个Interactive SQL实例,并连接至镜像服务器:
dbisql -c "uid=DBA;pwd=sql;eng=mirrorreadonly;links=tcpip"
9. 执行以下SQL语句查看连接的是哪个服务器(server1或server2):
SELECT PROPERTY( 'ServerName' ), DB_PROPERTY( 'ArbiterState' ),
DB_PROPERTY( 'MirrorState' ), DB_PROPERTY('PartnerState' );
镜像服务器名应出现在结果集中。
10. 对镜像demo数据库执行以下SQL语句:
SELECT * FROM test;
请注意,test表的数据通过主服务器传送至镜像服务器。
11. 停止第三步启动的主服务器,触发故障切换(点击数据库消息窗口的关闭,或通过Windows任务管理器终止进程)。
如果警告消息显示服务器上尚存一个连接,请点击确定,即强制关闭。
注意:数据库服务器消息窗口通过双击系统托盘上的SQL Anywhere图标打开。
12. 在第五步中启动的Interactive SQL会话就失去连接了。注意,链接到只读镜像服务器的会话依然保持。实际上,镜像服务器现在已经升级为主服务器,只读连接自动变为可读可写。可通过以下SQL语句验证:
INSERT INTO test VALUES( 1, 'Hello from '+PROPERTY( 'ServerName' ) );
COMMIT;
13. 查看test表的数据:
SELECT * FROM test;
14. 可再次运行server1.bat文件重启server1。注意server2将保持主服务器状态直至server2被关闭或server2被主动告知成为镜像服务器。
这样就完成了演示。关闭Interactive SQL并保持服务器窗口。运行clean.bat文件删除本例程生成的文件。
本文档中出现的SQL Anywhere 11在其它地方可能出现为SQL Anywhere Panorama。
镜像服务器上的转移报表功能
数据库镜像是三个数据库服务器的配置,分别运行在不同的计算机上,以维护独立的数据库和事务日志文件的拷贝。主服务器和镜像服务器分别维护着这些文件的备份,而第三个服务器,判定服务器,则用来在需要的时候决定上述两个服务器何时接管数据库。
为了能更充分利用硬件资源,SQL Anywhere 11支持连接至镜像服务器并执行查询。这可将可能会耗费很多资源的报表操作转移至镜像服务器,使主服务器能应对OLTP的压力。
只读镜像服务器例程
本例程演示了如何搭建服务器镜像,故障切换如何发生,以及如何使用镜像服务器达到只读目的。
1. 启动命令行工具,浏览至例程的ReadOnlyMirror目录,并运行setup.bat文件。
本脚本将初始化demo数据库并搭建镜像环境。
2. 运行arbiter.bat以启动判定服务器。
3. 运行server1.bat以启动主服务器。
命令行使用了-sm新选项。该选项用来提供备选镜像服务器名,当连接至只读镜像服务器时必须指定。-sn参数继续提供用来连接至主服务器的备选服务器名。
4. 运行server2.bat启动镜像服务器。
一旦所有的服务器均启动后,可在不同的服务器窗口中检查消息,或在状态文件(./Mirror/*.txt)中查看内容,找出哪个服务器是主服务器,哪个服务器是镜像服务器。
5. 在命令行中执行以下语句,启动Interactive SQL并连接至主服务器:
dbisql -c "uid=DBA;pwd=sql;eng=mirrordemo;links=tcpip"
6. 执行以下SQL语句查看连接的是哪个服务器(server1或server2):
SELECT PROPERTY( 'ServerName' ), DB_PROPERTY( 'ArbiterState' ),
DB_PROPERTY( 'MirrorState' ), DB_PROPERTY( 'PartnerState' );
主服务器名出现在结果集中。
7. 执行以下语句,将例程数据加入demo数据库中:
CREATE TABLE test ( col1 INTEGER, col2 CHAR(32) );
INSERT INTO test VALUES( 1, 'Hello from '+PROPERTY( 'ServerName' ) );
COMMIT;
8. 通过命令行中执行以下语句启动另一个Interactive SQL实例,并连接至镜像服务器:
dbisql -c "uid=DBA;pwd=sql;eng=mirrorreadonly;links=tcpip"
9. 执行以下SQL语句查看连接的是哪个服务器(server1或server2):
SELECT PROPERTY( 'ServerName' ), DB_PROPERTY( 'ArbiterState' ),
DB_PROPERTY( 'MirrorState' ), DB_PROPERTY('PartnerState' );
镜像服务器名应出现在结果集中。
10. 对镜像demo数据库执行以下SQL语句:
SELECT * FROM test;
请注意,test表的数据通过主服务器传送至镜像服务器。
11. 停止第三步启动的主服务器,触发故障切换(点击数据库消息窗口的关闭,或通过Windows任务管理器终止进程)。
如果警告消息显示服务器上尚存一个连接,请点击确定,即强制关闭。
注意:数据库服务器消息窗口通过双击系统托盘上的SQL Anywhere图标打开。
12. 在第五步中启动的Interactive SQL会话就失去连接了。注意,链接到只读镜像服务器的会话依然保持。实际上,镜像服务器现在已经升级为主服务器,只读连接自动变为可读可写。可通过以下SQL语句验证:
INSERT INTO test VALUES( 1, 'Hello from '+PROPERTY( 'ServerName' ) );
COMMIT;
13. 查看test表的数据:
SELECT * FROM test;
14. 可再次运行server1.bat文件重启server1。注意server2将保持主服务器状态直至server2被关闭或server2被主动告知成为镜像服务器。
这样就完成了演示。关闭Interactive SQL并保持服务器窗口。运行clean.bat文件删除本例程生成的文件。
相关文章推荐
- SQL Anywhere 11 (Panorama) 评审指南 Part V
- SQL Anywhere 11 (Panorama) 评审指南 Part VI
- SQL Anywhere 11 (Panorama) 评审指南 Part VII
- SQL Anywhere 11 (Panorama) 评审指南 Part VIII
- SQL Anywhere 11 (Panorama) 评审指南 Part I
- SQL Anywhere 11 (Panorama) 评审指南 Part X
- SQL Anywhere 11 (Panorama) 评审指南 Part II
- SQL Anywhere 11 (Panorama) 评审指南 Part III
- SQL Anywhere 11 (Panorama) 评审指南 Part IX
- 读林锐博士 高质量C++/C编程指南 笔记 2006-11-15前言
- zz (2006- 11-30更新:ISWC2006论文集已上传)本 版 相 关 资 源 (入门指南,资料软件,网址列表,会议期刊)!
- Node.js权威指南 (11) - 加密与压缩
- C++ 初学者指南 第一篇(11)
- 游戏玩家的图形显示设置指南(11)(The Gamer's Graphics & Display Settings Guide)
- 11 个高效的同行代码评审最佳实践(转载)
- IOS开发指南读书笔记11(IOS数据持久层的建立3)
- 学习代码《Cocos2d-x权威指南》11-12章实例代码2.1.3修正
- Fedora 11 安装指南-08
- Fedora 11 安装指南-12
- Informix IDS 11细碎经管(918检验)认证指南,第8局部:面向经管员的SQL特征(7)