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 必须在 MASTER..SYSTRANSACTIONS 上具有 SELECT 权限。
如果使用了 mlsrv12 的 -cs 选项,则 MobiLink 服务器登录 ID 必须具有 dtm_tm_role 角色。
您必须使用 sp_dboption 选项将 SELECT INTO 权限设置为 true。例如,在 Interactive SQL 中运行以下脚本将 your-database-name 上的 SELECT INTO 权限设置为 true:
sp_dboption your-database-name, "SELECT INTO", true go
要设置 Adaptive Server Enterprise 用作 MobiLink 统一数据库,必须运行设置过程,此过程将添加 MobiLink 同步所需的 MobiLink 系统表、存储过程、触发器和视图。可通过多种方法实现这一点:
运行 syncase.sql 安装脚本,它位于 %SQLANY12%\MobiLink\Setup 中。
检查并更新 Sybase Central 中的 MobiLink 系统设置。请参见MobiLink 系统设置。
必须使用随附于 Adaptive Server Enterprise 数据库的 ODBC 驱动程序为 Adaptive Server Enterprise 统一数据库设置 ODBC DSN。请参见:
数据类型映射 列的数据类型必须在统一数据库和远程数据库之间正确映射。 请参见Adaptive Server Enterprise 数据映射。
CHAR 列 在 Adaptive Server Enterprise 中,CHAR 数据类型长度固定并填充空白以达到字符串的全长。在 MobiLink 远程数据库(SQL Anywhere 或 UltraLite)中,CHAR 与 VARCHAR 相同:值不填充空白以达到固定宽度。强烈建议在统一数据库中使用 VARCHAR 而不是 CHAR。如果必须使用 CHAR,在同步过程中可以使用 mlsrv12 -b 命令行选项删除字符串的尾随空白。此选项对于用于检测冲突的字符串比较十分重要。
有关详细信息,请参见-b mlsrv12 选项。
BLOB 大小 要下载数据大小大于 32 KB(缺省值)的 BLOB 数据,执行以下操作:
VARBIT 限制 MobiLink 不支持将 0 长度(为空)VARBIT 或 LONG VARBIT 值同步到 Adaptive Server Enterprise 统一数据库。Adaptive Server Enterprise 不支持 VARBIT 类型,因此通常将这些类型同步到 Adaptive Server Enterprise 数据库中的 VARCHAR 或 TEXT 列。在 Adaptive Server Enterprise 上,空字符串值被转换为一个空格。SQL Anywhere 上的 VARBIT 列中不允许存在空格,因此尝试下载这些值将在远程数据库上导致错误。
请参见MobiLink 隔离级别。