Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
运行安装脚本之前,您应了解以下要求:
运行安装脚本的数据库用户预期为同步过程中将更新 MobiLink 系统表的同一用户。必须使用此用户启动 MobiLink 服务器和配置 MobiLink 应用程序。 请参见所需权限。
MobiLink 服务器用于连接统一数据库的 RDBMS 用户必须能够使用 MobiLink 系统表、过程等,但不能使用任何限定符(例如,SELECT * from ml_user)。 请参见MobiLink 服务器系统表。
MobiLink 服务器登录 ID 必须在 Sybase IQ 的 SP_IQTRANSACTION 系统过程上具有 EXECUTE 权限。
要设置 Sybase IQ 用作 MobiLink 统一数据库,必须运行设置过程,此过程将添加 MobiLink 同步所需的 MobiLink 系统表、存储过程、触发器和视图。可通过多种方法实现这一点:
运行 synciq.sql 安装脚本,它位于 %SQLANY12%\MobiLink\Setup 中。
检查并更新 Sybase Central 中的 MobiLink 系统设置。请参见MobiLink 系统设置。
您必须为 Sybase IQ 统一数据库设置 ODBC DSN。Sybase IQ 的 ODBC 驱动程序随 Sybase IQ 一起安装。
有关 Sybase IQ 的 ODBC 驱动程序信息,请参见 Sybase IQ 文档。
如果上载中包含修改 IQ 库中定义的任何同步表的上载数据,并且如果 MobiLink 服务器正在运行多个并发数据库工作线程,那么必须将所有上载序列化,因为在任何给定时间 Sybase IQ 15 服务器仅允许单个连接修改 IQ 库中的给定表。
如果编写的 begin_upload 连接脚本中包括或使用以下 SQL 语句,那么满足此要求:
LOCK TABLE table_name IN WRITE MODE WAIT time_string
其中 table_name 为在 IQ 库中定义的表名称,time_string 用于指定锁定表的最长时间段。表可以简单定义如下:
create table coordinate_upload ( c1 int )
该表不需要包含任何数据。
所有修改 IQ 表的事务都必须进行序列化,无论是在 MobiLink 服务器连接上发生的事务还是与 IQ 数据库的其它连接上发生的事务。对于 MobiLink 服务器事务,可以使用上面介绍的相同逻辑。与让 MobiLink 服务器自动重试每个事务相比,此方法更为有效并且具有更好的性能。
为 Sybase IQ 统一数据库创建同步模型时,表映射对于 IQ 表的缺省情况为仅下载。如果将任何映射更改为双向或仅上载,则必须确保将这些 IQ 表的更改序列化。例如,按照上面的描述添加 begin_upload 事件。
请参见MobiLink 隔离级别。