Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 11 - 更改和升级 » 升级到 SQL Anywhere 11 » 升级 SQL Anywhere

 

重建版本 10 及更高版本数据库

重建数据库包括卸载和重装数据库以升级其文件格式。升级文件格式时,会更改用于存储和访问磁盘上数据的文件格式,使您可以使用最新版本软件的所有新功能和增强性能。

小心

卸载并重装大数据库既耗时又需要大量磁盘空间。此过程大致需要相当于数据库两倍大小的磁盘空间,用于保存已卸载的数据和新的数据库文件。

如果要重建的数据库是 SQL Remote 复制中涉及的数据库或 MobiLink 安装中的远程数据库,并且使用 dbunload 实用程序,必须确保使用 -ar 或 -an 选项。此选项确保将新数据库的事务日志偏移设置为与旧数据库的事务日志偏移匹配。

在使用 dbunload 卸载版本 10 或更高版本的数据库时,所使用的 dbunload 的版本必须与用于访问数据库的数据库服务器的版本相匹配。如果将较旧版本的 dbunload 和相对较新版本的数据库服务器一起使用,会报告出现错误,反之亦然。

由于 SQL Anywhere 中索引的更改,当通过卸载和重装来重建数据库时,重建的数据库可能会比原始数据库小。数据库大小的减小并 表示出现了问题或有数据丢失。

注意

建议您先备份数据库,然后再重建数据库。

重装带有自动增量列的表

通过指定 dbunload -l 选项,可在重建的数据库中保留自动增量列的下一个可用值。此选项会针对包含自动增量值的每个表,将对 sa_reset_identity 系统过程的调用添加到生成的 reload.sql 脚本中,从而保留 SYSTABCOL.max_identity 的当前值。

重建数据库
♦  重建数据库 (Sybase Central)
  1. 执行升级软件的标准预防措施。请参见重要的升级预防措施

  2. 选择 [开始] » [程序] » [SQL Anywhere 11] » [Sybase Central]。

  3. 启动运行有要升级的数据库的版本 11 数据库服务器,然后通过 Sybase Central 连接到该数据库。

  4. 选择 [工具] » [SQL Anywhere 11] » [卸载数据库]。

  5. 阅读 [卸载数据库向导] 第一页的内容,然后单击 [下一步]。

  6. 选择 [卸载在当前版本服务器上运行的数据库],然后从列表中选择数据库。单击 [下一步]。

  7. 选择卸载并重装到一个新的数据库。单击 [下一步]。

  8. 为数据库指定一个新的文件名。

  9. 还可以为新数据库指定页面大小,但指定的页面大小不能大于数据库服务器的页面大小。缺省的页面大小是 4096 个字节。如果愿意,可以加密数据库文件。如果选择高度加密,那么每次启动数据库时都需要加密密钥。单击 [下一步]。

    有关数据库文件加密的详细信息,请参见加密和解密数据库

  10. 选择 [卸载结构和数据]。您也可以为数据库选择任何其它您需要的选项。单击 [下一步]。

  11. 选择 [卸载所有数据库对象]。单击 [下一步]。

  12. 指定是否希望在卸载/重装完成时连接到新数据库。

  13. 单击 [完成] 开始此过程。应检查新数据库以确认重建已正确完成。

    有关使用 [卸载数据库向导] 的详细信息,请参见使用 [卸载数据库向导] 导出数据

♦  重建数据库(命令行)
  1. 执行升级软件的标准预防措施。请参见重要的升级预防措施

  2. 请确保您对要升级的数据库有独占访问权,同时确保系统路径中版本 11 实用程序的路径位于其它实用程序的路径之前。请参见使用实用程序

  3. 使用 -an 选项运行卸载实用程序 (dbunload),以创建新数据库。

    dbunload -c "connection-string" -an new-db-file

    connection-string 中指定的数据库用户必须对要重建的数据库具有 DBA 权限。

    此命令将创建新数据库。如果想用升级后的数据库替换现有的数据库,则使用 -ar 选项代替 -an 选项。要使用 -ar 选项,必须连接到个人数据库服务器或与卸载实用程序 (dbunload) 位于同一计算机上的网络数据库服务器。

    有关其它卸载实用程序 (dbunload) 选项的信息,请参见卸载实用程序 (dbunload)

  4. 先关闭数据库并将事务日志存档,然后再使用重装的数据库。

    如果要在卸载和重装过程中更改数据库的特性(例如,将区分大小写的数据库更改为不区分大小写的数据库),则此过程会更为复杂。请参见重建数据库