版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
InformixInformix数据库升级指南谢烨,软件工程师,IBM孙国荣,软件工程师,IBM谭永贻,高级技术经理,IBM简介:Informix数据库升级是Informix治理员的一项重要且具有挑战性的工作。本文主要介绍Informix数据库升级前的预备工作、升级的操作过程、升级后的调优工作、升级的留意事项,使读者对Informix数据库升级有较为全面的理解。引言InformixInformix11InformixSQL语句跟踪、非阻断的检查点、SDS辅节点、星型连接、自动存储扩展、图形界面的治理工具OAT等,并且Informix版本7、9、10已进入EOS(EndOfSupport)InformixInformix11。回页首Informix数据库升级简介InformixInformix数据库升级是指把使用的Informix数据库从低版本转化为高版本。对Informix后的测试、升级后的调优等。Informix数据库升级有两种类型:in-placenon-in-place。In-place升级中,版本的Informix使用的数据文件与旧版本的InformixNon-in-placeInformix使用的数据文件与旧版本的Informix治理员需要导出导入数据。non-in-place所需的硬件资源多,风险较小。在一些状况下我们只能使用non-in-place升级,例如转变了硬件或操作系统。两种类型的Informix数据库升级的示意图如图1所示。图1.两种类型的Informix数据库升级的示意图回页首回页首Informix数据库升级的测试打算升级前后每个数据库的schema在升级前和升级后,我们需要对Informix数据库进展测试,然后比较升级前的测试结果和升升级前后每个数据库的schema升级前后磁盘空间的安排状况,如dbspace、chunk、extent等的状况升级前后磁盘空间的安排状况,如dbspace、chunk、extent等的状况升级前后每个数据表的行数可使用onstat-d查看dbspace和chunk的状况。可使用oncheck-pe查看extent的状况。升级前后每个数据表的行数我们需要验证升级前后数据表的行数是一样的。可使用如下的SQL语句:selectselectcount(*)from<table>;升级前后一些列的总和或平均值升级前后一些列的总和或平均值可使用如下的SQL语句:selectselectsum(<column>)from<table>;selectavg(<column>)from<table>;升级前后一些升级前后一些SQL语句的结果我们可以选择出一些较简单〔比方涉及到多表查询〕的SQL语句,然后在升级前后运行这些SQLSQL语句的运行结果是一样的。升级前后一些重要SQL语句的查询打算(queryplan)和运行时间在某一个session中运行如下SQL语句后,Informix升级前后一些重要SQL语句的查询打算(queryplan)和运行时间SETSETEXPLAINON;可使用如下方式得到SQL语句的运行时间:将SQL语句写在一个后缀名为sql的文件中,例如my.sql在shell上运行如下命令:timetimedbaccess<database><sqlFile>例如:timedbaccesscrmdbmy.sql升级前后数据库〔不包括应用程序〕关于典型事务的吞吐量升级前后数据库〔不包括应用程序〕关于典型事务的吞吐量在dbaccess〔不包括应用程序在单位时间内最多能处理多少典型事务。升级前后业务系统〔包括数据库和应用程序〕关于典型业务的吞吐量测试业务系统在单位时间内最多能处理多少典型业务。升级前后业务系统〔包括数据库和应用程序〕关于典型业务的吞吐量升级前后正常负载下系统资源〔升级前后正常负载下系统资源〔CPU、内存、硬盘等〕的使用状况可使用onstat、iostat等命令。升级前后较大负载下系统资源〔升级前后较大负载下系统资源〔CPU、内存、硬盘等〕的使用状况可使用onstat、iostat等命令。在对生产系统进展升级前,我们应在模拟系统中对“Informix数据库升级”进展演练。在对模拟系统、生产系统进展升级的前后,我们都应执行测试打算。回页首演练。假设在“数据库升级失败时的应对方案”中使用“onmode-b”的数据库回退方案,那么我们还需制定“验证数据库回退的正确性”的测试打算并在模拟系统中执行。回页首Informix数据库升级前的检查检查是否有足够的用于升级的磁盘空间检查是否有足够的用于升级的磁盘空间假设是non-in-place10%以上。in-place升级,应确保:RootChunk(Chunk0)10%的空间是可用的。足够的规律日志空间以重建sysmaster、sysadmin、sysutils数据库。Partitionheaders必需有一些可用空间。(Informix11中的某些描述符或特性使用。)假设一个dbspace上有n个databasedbspace还需要(n*2000)KB的可用空间。(dbspace)需要多少空间。(free_space_reqKB。)DATABASEsysmaster;SELECTpartdbsnum(partnum)dbspace_num,trunc(count(*)*2000)free_space_reqFROMsysdatabasesGROUPBY1ORDERBY1;SQL(dbspace)还有多少可用空间。(free_space_avail。)DATABASEsysmaster;SELECTdbsnumdbspace_num,sum(nfree)free_space_availFROMsyschunksGROUPBY1ORDERBY1;检查是否有数据表的extent数目大于200extent数目大于200,那么我们最好重建该extentsize,从而使该数据表的extent数目小200。可用下面的SQL语句查找extent数目大于200的数据表:DATABASEsysmaster;SELECTdbsname,tabname,nextnsFROMsystabnamest,sysptnhdrpWHEREt.partnum=p.partnumANDp.nextns>200ORDERBY3DESC;检查增关键字在对数据库进展升级前,治理员应先检查数据库的schema中和数据库应用程序的SQL(keyword)Informix9.40数据库升级到Informix11.50Informix9.40数据库中是否含有Informix10.00、Informix11.00、Informix11.50Informix9.40数据库中的这些“增关键词”进展修改,直到Informix9.40数据库中不含有这些“增关键词”。“增关键词”InformixMigrationGuide。检查是否有“outstandingin-placetablealters”检查数据库中是否有“outstandingin-placetablealters”,假设有则需要先消退“outstandingin-placetablealters”。〔具体过程请参见“Download”中的“检查和消退OutstandingInPlaceTableAlters.doc”〕Informix数据库升级操作过程InformixInformix数据库升级有两种类型:in-place和non-in-place。下面将分别介绍这两种类型升级的具体操作过程。in-place升级操作过程in-place升级操作过程主要包括:安装配置版本Informix数据库效劳器检查旧版本Informix数据库的正确性备份旧版本Informix数据库对Informix数据库里的数据构造等进展转换检查版本Informix数据库的正确性in-placein-place升级操作过程有更好的把握Informix数据库从版本9.40升级到版本11.50。1. 〕拷贝Informix9.40数据库效劳器的一些配置如下:操作系统的环境变量INFORMIXSERVER为bankserver操作系统的环境变量INFORMIXDIR为/opt/informix940onconfig.bank文件里的三个参数:SERVERNUM33DBSERVERNAMEbankserverDBSERVERALIASESbankserverdr,bankservershmsqlhosts.bankbankserveronsoctcplocalhost6784bankserverdrdrsoctcplocalhost6785bankservershmonipcshmlocalhost67862.Informix11.50数据库效劳器。Informix11.50Informix9.40数据库效劳器的配置参数,来对Informix11.50数据库效劳器进展配置。〔特别要留意的是:假设Informix9.40数据库效劳器和Informix11.50INFORMIXDIR为了避开InformixInformix11.50Informix11.50数据库效劳器实行“切断网络连接”或“修改数据库实例的名字和端口号”〔“修改数据库实例的名字和端口号”指将Informix11.50数据库实例的名字和端口号修改得与Informix9.40数据库实例不同。〕〔在后面的步骤中,Informix9.40oninit-s的方式启动的,启动后处于quiescent模式,在这种模式下应用程序是无法连接上Informix9.40数据库效劳器的。〕Informix11.50数据库效劳器执行“切断网络连接”〔由于Informix9.40数据库效劳器和Informix11.50数据库效劳器位于同一个效劳器上,所以Informix9.40数据库效劳器的网络连接也被切断了〕,那么Informix11.50数据库效劳器的一些配置如下:INFORMIXSERVERbankserver操作系统的环境变量INFORMIXDIR/opt/informix1150onconfigSERVERNUM33DBSERVERNAMEbankserverDBSERVERALIASESbankserverdr,bankservershmsqlhostsbankserveronsoctcplocalhost6784bankserverdrdrsoctcplocalhost6785bankservershmonipcshmlocalhost6786假设对Informix11.50数据库效劳器执行“修改数据库实例的名字和端口号”,那么Informix11.50数据库效劳器的一些配置如下:INFORMIXSERVERbankserver_t操作系统的环境变量INFORMIXDIR/opt/informix1150onconfig.bankSERVERNUM33DBSERVERNAMEbankserver_tDBSERVERALIASESbankserverdr_t,bankservershm_tsqlhosts.bankbankserver_tonsoctcplocalhost9784bankserverdr_tdrsoctcplocalhost9785bankservershm_tonipcshmlocalhost9786Informix9.40Informix9.40运行onmode-sy命令使Informix9.40quiescent模式。等到全部连接断开后,运行onmode-l命令将规律日志移动到下一个。onmode-c(checkpoint)。onmode-yukInformix9.40数据库效劳器。oninit-sInformix9.40quiescentonline.log文件中与这次启动相关的内容,特别是查看在这次启动中“是否有错误信息”和“事务的状况”。查看“事务的状况”2的最终一行所示。2.Informix启动过程中“事务的状况”Back06。“onmode-yuk”Informix9.405。Openonstat-xOpen的Open“onmode-yuk”关闭Informix9.405。CommittedRolledBack的事务的数目不为零,则依据实际状况进展适当的操作,接着使用“onmode-yuk”关闭Informix9.40。然后重复5。oncheckInformix9.40数据库的全都性。假设遇到问题,则针对具体状况使用适当的方法解决遇到的问题。下面列出了oncheck命令的一些选项的作用:oncheck-cr命令可检查数据库的保存页oncheck-ceextentoncheck-cccatalog表oncheck-cD命令可检查数据库的数据oncheck-cI命令可检查数据库的索引Informix9.40ontapeonbar命令对数据库进展备份。治理员还可考虑是否在存储系统层面上对数据库进展一次拷贝。onmode-kyInformix9.40数据库效劳器。使用oninit-vy启动Informix11.50oninit-i命令来启动Informix11.50Informix数据库效劳器将对数据构造等进展从版本9.40到版本11.50一个的shelltail-fonline.log命令实时监控online.log文件增的内容。假设监控到“Conversionfromversion9.40Started”,说明数据库版本的转换开头了。假设监控到错误信息,应准时实行适当的措施。假设监控到“ConversionCompletedSuccessfully”的信息,说明数据库版本的转换被成功完成了。Informix11.50数据库的统计数据。过程如下:对每个数据库运行“updatestatisticslowdropdistributions”。systemcatalog表运行“updatestatisticshigh”:sysblobssyscolauthsyscolumnssysconstraintssysdefaultssysdistribsysfragauthsysfragmentssysindicessysobjstatesysopclstrsysprocauthsysproceduressysroleauthsyssynonymssyssyntablesystabauthsystablessystriggerssysusers例如:updatestatisticshighfortablesysblobs;updatestatisticshighfortablesyscolauth;……updatestatisticshighfortablesysusers;对每个数据库的一般的数据表和索引运行它们所需级别(low、medium、high)的更统计数据命令。一般状况下运行“updatestatisticsmedium”即可。oncheckInformix11.50数据库的全都性。备份Informix11.50数据库。治理员可使用ontape或onbar命令对数据库进展备份。onmode-kyInformix11.50数据库效劳器。14Informix11.50执行“恢复数据库实例的名字和端口号”3Informix11.5014对Informix11.50执行连接”。无论在步骤14执行哪个操作,执行操作后Informix11.50数据库效劳器的一些配置都如下:INFORMIXSERVERbankserver操作系统的环境变量INFORMIXDIR/opt/informix1150onconfig.bank文件的三个参数:SERVERNUM33DBSERVERNAMEbankserverDBSERVERALIASESbankserverdr,bankservershmsqlhosts.bankbankserveronsoctcplocalhost6784bankserverdrdrsoctcplocalhost6785bankservershmonipcshmlocalhost6786oninit-vyInformix11.50数据库效劳器。non-in-place升级操作过程non-in-place升级操作过程主要包括:安装配置版本Informix数据库效劳器Informix数据库的正确性Informix数据库使用工具将数据从旧版本Informix数据库复制到版本Informix数据库Informix数据库的正确性non-in-placenon-in-place升级操作过程有更好的把握。在这个例如中,我们将Informix数据库从版本9.40升级到版本11.50。将Informix9.40数据库效劳器的各个配置文件〔onconfig、sqlhosts等〕拷贝到备份文件夹。Informix11.50数据库效劳器。配置Informix11.50数据库效劳器。治理员可参考Informix9.40数据库效劳器的配置参数,来对Informix11.50数据库效劳器进展配置。〔特别要留意的是:假设一些配置参数Informix9.40Informix11.50数据库效劳器的INFORMIXDIR不同,这些配置参数有可能需要修改。〕〔在后面的步骤中,Informix11.50数据库效劳器启动后处于single-user模式,在这种模式下应用程序是无法连接上Informix11.50数据库效劳器的。〕Informix9.40Informix9.40。具体过程如下:运行onmode-sy命令使Informix9.40quiescent模式。等到全部连接断开后,运行onmode-l命令将规律日志移动到下一个。onmode-c(checkpoint)。onmode-yukInformix9.40数据库效劳器。据库实例。〔9Informix9.40on-line模式,所以我们要修改Informix9.40数据库实例的“名字和端口号”来防止应用程序连接上Informix9.40数据库实例。〕oninit-sInformix9.40quiescentonline.log文件中与这次启动相关的内容,特别是查看在这次启动中“是否有错误信息”和“事务的状况”。查看“事务的状况”2的最终一行所示。假设没有错误信息,Open的事务的数目、Committed的事务的数目、RolledBack的事务的数目都为0,则可以开头操作步骤7。假设查看到错误信息,则针对错误信息做相应的处理,接着使用“onmode-yuk”关闭Informix9.406。假设Open的事务的数目不为零,则使用onstat-x检查还有哪些Open的事务,再使用适当的方法将这些Open的事务去除,接着使用“onmode-yuk”关闭Informix9.40。6。CommittedRolledBack的事务的数目不为零,则依据实际状况进展适当的操作,接着使用“onmode-yuk”关闭Informix9.40。然后重复操作步骤6。oncheckInformix9.40数据库的全都性。假设遇到问题,则针对具体状况使用适当的方法解决遇到的问题。备份Informix9.40数据库。治理员可使用ontape或onbar命令对数据库进展备份。在non-in-place升级中,一般不需要再在存储系统层面上对数据库进展一次拷贝。onmode-mInformix9.40on-line模式。oninit-ivyInformix11.50数据库效劳器。使用onmode-j将Informix11.50改成single-user模式。使用工具将数据从Informix9.40中导出,并将导出的数据导入到Informix11.50中。下dbexport、dbimport为例来介绍数据的导出导入过程:Informix9.40<exportdir>文件夹:dbexport<database>-o<exportdir>将<exportdir>文件夹下的<database>.exp<importdir>文件夹下。依据需要设置环境变量。例如:原始数据库的DB_LOCALE是en_us.8859-1,而治理员要使“使用dbimport命令生成的数据库”的DB_LOCALE是zh_cn.gb18030-2000则DB_LOCALEzh_cn.gb18030-2000,设置环境变量CLIENT_LOCALEzh_cn.gb18030-2000。<importdir>Informix11.50:dbimport<database>-d<dbspace>-i<importdir>Informix11.50数据库的统计数据。oncheckInformix11.50数据库的全都性。Informix11.50ontapeonbar命令对数据库进展备份。onmode-mInformix11.50on-line模式。onmode-kyInformix9.40数据库效劳器Informix数据库升级成功后的性能调优当数据库升级成功后,Informix治理员可以利用Informix11的特性来提高数据库的性能。例如:Informix治理员可通过设置VP_MEMORY_CACHE_KB配置参数来设定CPUVP的私有内存,从而提高CPUVP的性能;Informix治理员可通过设置SQLTRACESQLSQL语句进展调优。In
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB 48319-2026智能网联汽车时空数据安全处理基本要求
- T/SDWB 002-2023城市轨道交通站台屏蔽门清洁服务规范
- T/LYXH 100-2025金融行业商务楼宇等级评价标准
- T/CEAC 051-2024体重管理人群用黑咖啡
- T/CGSS 033-2023老年阻塞性睡眠呼吸暂停患者无创正压通气应用规范
- T/CSTEA 00024-2021茶类饮料 现制水果茶
- GB/T 48215.1-2026核燃料技术α能谱法第1部分:铀及其化合物中镎的测定
- 2025~2026学年海南海口市秀英区五源河学校苏教版三年级数学下册素质教育总复习(一)【附答案】
- 交通安全培训
- 山东省潍坊市昌乐县2027届七上数学期末教学质量检测模拟试题含解析
- 2026年广东省考评员培训考试题库及参考答案
- 2026年中国融通资产管理集团有限公司人员招聘笔试参考试题及答案详解
- 2026年新兴污染物的识别与监测
- 2026解放军新闻传播中心社会招聘47人笔试参考题库及答案详解
- 对于产品质量投诉的整改回复函7篇
- 2026幼小衔接比大小、填符号口算专项训练(可打印)
- 中老年肌少症筛查与诊疗临床指南(2026版)
- 人教版英语中考高频词汇例句版
- 关于补充耕地实施方案
- 第20课-从“战时共产主义”到“斯大林模式”-初中-历史-教学设计
- 财政非税收入培训课件
评论
0/150
提交评论