免费注册 查看新帖 |

Chinaunix

广告
  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1848 | 回复: 4
打印 上一主题 下一主题

sybase11升级到12的方法 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-11-15 09:13 |只看该作者 |倒序浏览
如果要将sybase11以前的数据库升级到12.0的方法。按照如下步骤你可以轻松的做到。

1、首先使用sp_helpdevice 命令,将所显示的所有信息保存下来。
例如:
device_name                    physical_name
         description


         status cntrltype device_number
         low
         high
------------------------------ ----------------------------------------------
        ----------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------
        ------ --------- -------------
        --------------------------------------------------------------------------------
        --------------------------------------------------------------------------------

staticdb                       /dev/rvol/dg2/vol03
         special, physical disk, 200.00 MB


              2         0             2
                                                                                 33554432
                                                                                 33656831
staticdb_log                   /dev/rvol/dg2/vol04
         special, physical disk, 50.00 MB


              2         0             3
                                                                                 50331648

2、使用sp_helpdb命令,同样保存所有的显示信息。
         name                     db_size       owner                    dbid
         created
         status
------------------------ ------------- ------------------------ ------
        --------------
        ------------------------------------------------------------------------------------------------------
staticdb                      250.0 MB sa                            5
         Nov 16, 1999
         no options set

3、使用sp_helpdb db_name,这里db_name 是使用sp_helpdb显示结果中的信息。保存所有数据库的查询信息。以防不测。^_^
        如:sp_helpdb staticdb
        1>; sp_helpdb staticdb
        2>; go
name                     db_size       owner                    dbid
         created
         status
------------------------ ------------- ------------------------ ------
        --------------
        ------------------------------------------------------------------------------------------------------
staticdb                      250.0 MB sa                            5
         Nov 16, 1999
         no options set

device_fragments               size          usage                free kbytes
------------------------------ ------------- -------------------- -----------
staticdb                       200.0 MB      data only                 200832
staticdb_log                   50.0 MB       log only                   51184

(return status = 0)

4、dump 数据库信息.dump database db_name to "device path" .这里device path必须是一个sybase用户具有可写权限的目录。
        建议新建一个目录。例如:”/usr/users/xxxxx"。(什么?不能dump?拿板砖砸你,backup_server有没有起起来。)
        如果你没有做1-4中的任何一步,当你的数据库升级失败(致命的失败)的时候你只能说“如果上天再给我一次机会,我一定.........."。
        我还是只能用板砖砸你。此时你基本上只有祈求奇迹的发生了。^_^
5、转储事务日志:
        dump tran db_name with no_log
6、bcp系统表的信息。
        select name form sysobjects where type='U',将显示结果保存。之后bcp出来所有系统表的信息。
        bcp master..db_name out bcp_db_name -Sserver_name -Usa -Ppasswd -c -t@
6、12.0要求master,model,和tempdb的数据库的大小分别是7,3,3m的大小。所以下面要进行的就是数据库的扩充的问题。
        alter database master on master=xx        单位是兆M。
        alter database model on dev_name=xx
        alter database tempdb on dev_name=xx

7、在12.0及以后版本的数据库中必须要有一个sybsystemdb数据库。所以要在现有的数据库server中创建一个这样的数据库。
        首先初始化一个设备。
         1>;disk init
         2>;name='dev_name',physname='/dev/rvol/dg2/vol19',vdevno=18,size=512000 (ggjjddmm们能看懂吧??^_^)
         3>;go

8、在刚才新初始化的设备上创建新的数据库sybsystemdb。
        1>; create database sybsystemdb
        2>;      on dev_name=5
        3>;      log on dev_name=15 WITH OVERRIDE
        4>;go
        CREATE DATABASE: allocating 2560 pages on disk 'dev_name'
        CREATE DATABASE: allocating 7680 pages on disk 'dev_name'
        Msg 5018, Level 17, State 1:
        Line 1:
        Caution:  You have set up this database to include space on disk 18 for both
        data and the transaction log.  This can make recovery impossible if that disk
        fails.

9、关闭数据库中除tempdb库的"select ...."外的每个数据库的选项。
        1>;sp_dboption db_name ,"option name" ,false
        2>;go
        1>;use db_name
        2>;go
        1>;checkpoint
        2>;go
        是对数据库的修改生效。

10、停止所有可能连接数据库的应用程序。
11、停止在后台或在crontab中设置的可能连接数据库的应用程序。
12、以sa登陆,使用sp_who 检查当前用户的个数。必须显示是只有一个用户,即自己。
13、编辑使用sqlupgraderes 使用的脚本文件。此文件在
        $SYBASE/ASE-12_0/init/sample_resource_files/upgrade.rs,最好将upgrade.rs文件做一个拷贝并且重新命名,例如:
        upgrade_servername.rs,文件中的相关设置其中的相关说明,应可以明白。
        使用sqlupgraderes命令升级数据库。
        sqlupgraderes -r $SYBASE/ASE-12_0/init/sample_resource_files/upgrade_servername.rs

到此你最好祈求上帝保佑你。祝你一切顺利。如果你看到10%字样出现的话,那么祝贺你,你的数据库升级已经成功了。当然这个
升级的过程比较慢,我升级的过程大概花费了10分钟左右。千万不可因为性急而中断。那样你只能扇自己的脸了。^_^

哦。忘了说在进行这些之前你一定正确安装了sybase12.0了吧。这里可能要说明一点就是,在安装之前你要将要升级的数据库额
.cshrc文件修改一下,将新的SYBASE 的路径设为新安装的数据库的路径,并在其中增加一个OLDSYBASE的环境变量。不用说你也知道这
个环境变量的用处是干什么的了吧!

好了,不罗嗦了,祝你数据库升级一帆风顺。

论坛徽章:
0
2 [报告]
发表于 2004-11-15 09:53 |只看该作者

sybase11升级到12的方法

为什么没有人回复!!!!!???????
要人过流名,燕过流毛呀!!!!^_^

论坛徽章:
0
3 [报告]
发表于 2004-11-15 10:40 |只看该作者

sybase11升级到12的方法

好东西

论坛徽章:
0
4 [报告]
发表于 2004-11-19 09:38 |只看该作者

sybase11升级到12的方法

好东西呀,兄弟!!!111111
chenrx 该用户已被删除
5 [报告]
发表于 2004-11-21 16:15 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP