<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type='text/xsl' href='http://yizh1977.spaces.live.com/mmm2008-07-24_12.50/rsspretty.aspx?rssquery=en-US;http%3a%2f%2fyizh1977.spaces.live.com%2fcategory%2fcentos%2boracle%2ffeed.rss' version='1.0'?><rss version="2.0" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:msn="http://schemas.microsoft.com/msn/spaces/2005/rss" xmlns:live="http://schemas.microsoft.com/live/spaces/2006/rss" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>naka共享空间: centos oracle</title><description /><link>http://yizh1977.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&amp;_c=BlogPart&amp;partqs=catcentos%2boracle</link><language>en-US</language><pubDate>Fri, 10 Oct 2008 05:24:21 GMT</pubDate><lastBuildDate>Fri, 10 Oct 2008 05:24:21 GMT</lastBuildDate><generator>Microsoft Spaces v1.1</generator><docs>http://www.rssboard.org/rss-specification</docs><ttl>60</ttl><cf:parentRSS>http://yizh1977.spaces.live.com/blog/feed.rss</cf:parentRSS><live:type>blogcategory</live:type><live:identity><live:id>3114088440382333141</live:id><live:alias>yizh1977</live:alias></live:identity><cf:listinfo><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="typelabel" label="Type" /><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="tag" label="Tag" /><cf:group element="category" label="Category" /><cf:sort element="pubDate" label="Date" data-type="date" default="true" /><cf:sort element="title" label="Title" data-type="string" /><cf:sort ns="http://purl.org/rss/1.0/modules/slash/" element="comments" label="Comments" data-type="number" /></cf:listinfo><item><title>Maintaning redo log files</title><link>http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!471.entry</link><description>&lt;p&gt;&lt;strong&gt;Redo log files Groups and Members:&lt;/strong&gt; &lt;p&gt;&lt;a href="http://byfiles.storage.msn.com/y1pW9q1nnvcwsgd1e-LP64m6ByNmvDPEp2fCrZ7Oq4wXIdIeIwIT6yu-OnmDvYRUEp-NSjZ_twFep0?PARTNER=WRITER"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px" height=296 alt=image src="http://byfiles.storage.msn.com/y1pW9q1nnvcwsgxMMdin-06GnR0hK4Rwu_sAMBEw3PHi4j0YvXtEjkIcGmFbSeE7ftvaEx2d-Gy7Dg?PARTNER=WRITER" width=504 border=0&gt;&lt;/a&gt;  &lt;p&gt;每个组有多个成员，每个成员互为镜象。比如 Group1中的两个Menber分别放到不同的磁盘上，他们相互镜象，数据完全一样。两个Group不一样，也不是镜象 &lt;p&gt;&lt;strong&gt;Oracle Architecture：&lt;/strong&gt; &lt;p&gt;&lt;a href="http://byfiles.storage.msn.com/y1pW9q1nnvcwsgysV7CaJNoRO4zkAYjRggo6XKsw3d07UScfoPUlw49OB_Z3TpKw3DXkvaR_xRnFCE?PARTNER=WRITER"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px" height=439 alt=image src="http://byfiles.storage.msn.com/y1pW9q1nnvcwsiZi1_uFgbinaZTOWO4gg6WB1cXbw5PNHExs3nH7l2zsbhkST_rSA1W2yOkHxmGDV4?PARTNER=WRITER" width=504 border=0&gt;&lt;/a&gt;  &lt;p&gt;DBWR被触发之后写Data files，LGWR被触发之后写Redo log files，ARCH在每次logswitch之后进行归档CKPT发生的时候将修改Data files（＋ckpt编号）和Control files。&lt;br&gt;参考:&lt;a title="http://yizh1977.spaces.live.com/blog/cns!2B3776EFF823A0D5!461.entry" href="http://yizh1977.spaces.live.com/blog/cns!2B3776EFF823A0D5!461.entry"&gt;http://yizh1977.spaces.live.com/blog/cns!2B3776EFF823A0D5!461.entry&lt;/a&gt; &lt;p&gt;&lt;strong&gt;Without ARchiving：&lt;/strong&gt; &lt;p&gt;数据库Archive进程在典型情况下是使用高档方式，但是有些时候做成非归档方式。 &lt;p&gt;&lt;a href="http://byfiles.storage.msn.com/y1pW9q1nnvcwshpZa8MhnUifWUFrOQwd7dI14yGNFEFTkosVRGpBbwkc_PoQVWbdm3H1D28t6c_glw?PARTNER=WRITER"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px" height=306 alt=image src="http://byfiles.storage.msn.com/y1pW9q1nnvcwsjKma5_GX-mqzCZJw-DvayTlk6r3NbPtuohs1BL26ZHaNZHVLxAGDlxjYLJDR8JK6U?PARTNER=WRITER" width=504 border=0&gt;&lt;/a&gt;  &lt;p&gt;这个图可以想象一下Exchange数据存储过程。 &lt;p&gt;T1：数据文件和控制文件的序列号为50的时候进行一次备份，数据库运行的时候，50和51一样。这样写的目的51是当前组。 &lt;p&gt;T2:磁盘失败 &lt;p&gt;如果恢复：使用redolog做前滚操作，当这种状态发生，在非高档模式下只能恢复51 &lt;p&gt;&lt;strong&gt;With Archiving：&lt;/strong&gt; &lt;p&gt;&lt;a href="http://byfiles.storage.msn.com/y1pW9q1nnvcwsgIz-0xyCn6X2u3NK4XinaEDXiIXmiNqFnyRNp39K_Oo-CFtYTD6qWS7mNtqmMkJMg?PARTNER=WRITER"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px" height=277 alt=image src="http://byfiles.storage.msn.com/y1pW9q1nnvcwsgZroc_j88oMgvsHXC4P9CkTsR5V7nppihio9uQAFSBKaDJsRTEhSR_sPs842wTFZo?PARTNER=WRITER" width=504 border=0&gt;&lt;/a&gt;  &lt;p&gt;启动归档进程，当101的时候failure，那么归档日志里面记录了所有用户操作，因此可以恢复，使用数据文件和控制文件得到恢复。 &lt;p&gt;&lt;strong&gt;Obtaining Information about Archiving&lt;/strong&gt; &lt;p&gt;1，sql：ARCHIVE LOG LIST: &lt;p&gt;2，V$DATABASE: Nmae,log_mode &lt;p&gt;3，V$INSTANCE: ARCHIVER &lt;p&gt;&lt;strong&gt;Obtaining Information about Group&lt;/strong&gt; &lt;p&gt;V$THREAD &lt;p&gt;&lt;strong&gt;Obtaining Information about Members&lt;/strong&gt; &lt;p&gt;V$LOG &lt;p&gt;&lt;strong&gt;Log Switches and chechpoints&lt;/strong&gt; &lt;p&gt;1，强制切换，ALTER SYSTEM SWITCH LOGFILE－－只作为测试使用 &lt;p&gt;2，checkpoints &lt;p&gt;    Intervall：达到这个数量，做checkpoint操作 &lt;p&gt;    Timeout：规定之间，系统自动做checkpoint操作 &lt;p&gt;    Target：一般是经验控制，或者使用缺省值&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=3114088440382333141&amp;page=RSS%3a+Maintaning+redo+log+files&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yizh1977.spaces.live.com&amp;amp;GT1=yizh1977"&gt;</description><comments>http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!471.entry#comment</comments><guid isPermaLink="true">http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!471.entry</guid><pubDate>Mon, 07 Apr 2008 05:54:00 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yizh1977.spaces.live.com/blog/cns!2B3776EFF823A0D5!471/comments/feed.rss</wfw:commentRss><wfw:comment>http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!471.entry#comment</wfw:comment><dcterms:modified>2008-04-07T05:54:00Z</dcterms:modified></item><item><title>数据写过程中各项触发条件及逻辑</title><link>http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!461.entry</link><description>&lt;p&gt;by Junsnasi 
&lt;p&gt;数据写过程中各项触发条件及逻辑 
&lt;p&gt;如大家所知，用户提交的数据并非直接写入数据文件，这中间有一个复杂的处理过程，如下图所示：大致描述了数据写过程中的处理逻辑 
&lt;p&gt;&lt;b&gt;&lt;a href="http://by2.storage.msn.com/y1pPFsRh7bgxlP2Ky9ZEgnqLyqaudhxG_8zw4_iwhAOiIpUDi6tPHi7mxEv5o_hnC4IImqugbXC3Gx2UEGm8uVFxs67FGC6e6wi?PARTNER=WRITER"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px" height=660 alt="数据写过程的体系结构" src="http://h3y9iq.bay.livefilestore.com/y1pWqYBtTsZSZm24g6ohoaZ_U-cBbcVS1QsbTQxSAGPNyniSfheR1DQ-vhMRLHQTpk8JXQ8hTXHddw7ftAihA-yTxZqzqvjUWgi?PARTNER=WRITER" width=804 border=0&gt;&lt;/a&gt; &lt;/b&gt;
&lt;p&gt;&lt;b&gt;写数据库缓存：&lt;/b&gt;&lt;br&gt;单数据库缓存的写过程看起来很简单，但是其实际过程相当复杂，大家务必要注意。最基本的在写数据库缓存之前，肯定会先涉及到读，比如你要更新一个表的数据，那么它会首先查找你要更新的数据是否已经存在于数据库缓存，如果不存在，就需要先将其从数据文件中读取出来，而这个读取又有可能触发写操作，这个写要分两步：&lt;br&gt;·第一步是判断数据库缓存中是否还有足够的剩余空间，如果剩余空间不足，则首先按照LRU的规则写一部分脏数据到数据文件中，腾出足够的空闲空间，然后再将要被更新的数据写进来。&lt;br&gt;·另一步是将更新前的数据写入回滚段，然后再将更新的数据写入数据库缓存。&lt;br&gt;即使是数据库缓存中的数据，也不是实时写向数据文件的，其触发条件看起来也很简单：&lt;br&gt;1、数据库缓存区的空闲空间不足&lt;br&gt;2、执行了检查点&lt;br&gt;&lt;b&gt;执行检查点主要完成两项工作：&lt;/b&gt;&lt;br&gt;1、更新控制文件，并修改数据文件的头信息，记录检查点&lt;br&gt;2、向DBWR布置将脏缓存块写入数据文件的任务&lt;br&gt;其触发条件是比较多的：&lt;br&gt;1、重做日志文件切换&lt;br&gt;2、系统收到ALTER SYSTEM CHECKPOINT;命令&lt;br&gt;3、将表空间置为脱机(offline)/只读(read only)/备份(backup)状态&lt;br&gt;4、通过初始化参数的设置控制检查点的执行频率。比如log_checkpoint_timeout初始化参数的值可以控制脏数据在DB BUFFER中的保留时间，log_checkpoint_interval初始化参数的值 可以控制在执行检查点之前，redolog文件中操作系统块(非oracle数据库块)的数量。&lt;br&gt;注意，将表空间置为：脱机(offline)/只读(read only)/备份(backup)状态时触发的DBWR写任务，只会写入相关表空间的脏缓存块。另外，CKPT每隔3秒写控制文件，以记录检查点在重做日志文件中的位置。&lt;br&gt;你可能会担心，我们的修改被保存在了数据库缓存中，但数据库缓存并非实时向数据文件写数据，虽然有一些触发条件，但触发条件也不是时时都会发生，这会不会造成数据的丢失呢，别担心，Oracle还有重做日志，接着向下看：&lt;br&gt;&lt;b&gt;写重做日志缓存：&lt;/b&gt;&lt;br&gt;在一步一步学dataguard系列中我写过一段文字专门白话了关于redo的相关概念，这里就不详述了，我们需要紧记一点，只要数据还在重做日志缓存中，尚未写入重做日志文件，这些数据就仍是不安全的，因此明确触发重做日志缓存向重做日志文件写的条件就非常重要：&lt;br&gt;1、每隔3秒自动触发一次&lt;br&gt;2、事务提交(注意理解ddl操作)&lt;br&gt;3、重做日志缓存被写满1/3&lt;br&gt;4、Dbwr准备写脏数据块到数据文件，如果这些数据对应的重做信息尚未写入重做日志文件的话，会先等待lgwr将脏数据涉及的重做日志写入重做日志文件，然后再将其写入数据文件(保证数据一致的关键步骤)&lt;br&gt;注意，没有重做日志文件切换这个条件，需要理解日志文件切换与重做日志缓存写日志文件是两种操作。当然，二者并非完全没有关系，举例来说假如切换日志文件之后，发现要切换的日志文件当然仍然在归档(或者其数据尚未完全写入到数据文件)，则此时数据库会被挂起，那么重做日志缓存向日志文件的写过程也会暂停。&lt;br&gt;综合来看，Dbwr,lgwr,ckpt三者相互关联相互依存，因此我想，搞清楚它们之间的关系，不仅有助于我们了解oracle写数据的逻辑，更有助于我们更深层次去理解oracle的体系。 
&lt;p&gt;&lt;img alt="" src="http://www.itpub.net/images/attachicons/image.gif" border=0&gt; &lt;a href="http://www.itpub.net/attachment.php?aid=500428&amp;amp;nothumb=yes"&gt;数据写过程的体系结构.jpg&lt;/a&gt; (106.28 KB) 
&lt;p&gt;2008-2-27 14:10&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=3114088440382333141&amp;page=RSS%3a+%e6%95%b0%e6%8d%ae%e5%86%99%e8%bf%87%e7%a8%8b%e4%b8%ad%e5%90%84%e9%a1%b9%e8%a7%a6%e5%8f%91%e6%9d%a1%e4%bb%b6%e5%8f%8a%e9%80%bb%e8%be%91&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yizh1977.spaces.live.com&amp;amp;GT1=yizh1977"&gt;</description><comments>http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!461.entry#comment</comments><guid isPermaLink="true">http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!461.entry</guid><pubDate>Mon, 07 Apr 2008 04:45:52 GMT</pubDate><slash:comments>1</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yizh1977.spaces.live.com/blog/cns!2B3776EFF823A0D5!461/comments/feed.rss</wfw:commentRss><wfw:comment>http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!461.entry#comment</wfw:comment><dcterms:modified>2008-04-07T05:11:02Z</dcterms:modified></item><item><title>Orale Control File</title><link>http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!457.entry</link><description>&lt;p&gt;The Use of the Control File： 
&lt;p&gt;1，小的二进制文件 
&lt;p&gt;2，只能连接到单一数据库，1：1关系，但是控制文件可以做镜象和多个拷贝 
&lt;p&gt;3，控制文件出现错误，就需要恢复 
&lt;p&gt;  
&lt;p&gt;Orale Control File Contents： 
&lt;p&gt;1，数据库名字和标志符 
&lt;p&gt;2，数据库创建日期 
&lt;p&gt;3，数据文件和redo log的位置 
&lt;p&gt;4，表空间名字 
&lt;p&gt;5，Log的历史信息 
&lt;p&gt;6，备份和恢复信息，oracle8开始推出的Oracle Recovery Manager 
&lt;p&gt;7，当前的log序列号 
&lt;p&gt;8，checkpoint  Information 
&lt;p&gt;  
&lt;p&gt;Multiplexing the control File： 
&lt;p&gt;      control_file 
&lt;p&gt;             | 
&lt;p&gt;             | 
&lt;p&gt;disk1-----------------disk2 
&lt;p&gt;  |                           | 
&lt;p&gt;  |                           | 
&lt;p&gt;contor101.con      contro102.con 
&lt;p&gt;由Oracle系统做镜象，如果disk1的文件出现错误，那么系统数据库正在运行的时候，将事件记录到警告日志中。如果数据库重启，就出错。处理方式：1，修改参数；2，恢复控制文件，copy然后覆盖。 
&lt;p&gt;  
&lt;p&gt;Guidelines for control files： 
&lt;p&gt;1，进行镜象，多个控制文件 
&lt;p&gt;2，Include the full pathname in CONTROL_name 
&lt;p&gt;3,  备份数据文件（两种方式） 
&lt;p&gt;4，控制文件大小由内容信息来决定，一般几个M 
&lt;p&gt;  
&lt;p&gt;Obtaining Information： 
&lt;p&gt;1，V$CONTROLFILE 动态视图，在数据库mount情况下查看 
&lt;p&gt;2，V$CONTROLFILE_RECORD_SECION 
&lt;p&gt;3，Performance views from the control file： 
&lt;p&gt;V$DATAFILE&lt;br&gt;V$TEMPFILE&lt;br&gt;V$TABLESPACE&lt;br&gt;V$LOG&lt;br&gt;OTEHERS 
&lt;p&gt;Control File是二进制文件，用普通的方法很难知道其中到底保存了什么内容，但是Oracle却提供了一个SQL*PLUS命令来将Control File的内容dump到文本文件中。 
&lt;p&gt;方法如下： 以SYSDBA身份登入SQL*PLUS 
&lt;p&gt;SQL&amp;gt; oradebug setmypid 
&lt;p&gt;SQL&amp;gt; oradebug dump controlf 3 
&lt;p&gt;将把control file dump到USER_DUMP_DEST初始化参数指定的目录下。 
&lt;p&gt;其中3为dump level。 level的解释如下： 
&lt;p&gt;1 ：only the file header 
&lt;p&gt;2 ：just the file header, the database info record, and checkpoint progress records 
&lt;p&gt;3 ：all record types, but just the earliest and latest records for circular reuse record types 
&lt;p&gt;4 ：as above, but includes the 4 most recent records for circular reuse record types 
&lt;p&gt;5+ ：as above, but the number of circular reuse records included doubles with each level 
&lt;p&gt;  
&lt;p&gt;Backup Control File 
&lt;p&gt;1，关闭数据库 
&lt;p&gt;2，两种方式 
&lt;p&gt;alter database backup controlfile to '...........' &lt;br&gt;or &lt;br&gt;alter database backup controlfile to trace &lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=3114088440382333141&amp;page=RSS%3a+Orale+Control+File&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yizh1977.spaces.live.com&amp;amp;GT1=yizh1977"&gt;</description><comments>http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!457.entry#comment</comments><guid isPermaLink="true">http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!457.entry</guid><pubDate>Sun, 06 Apr 2008 08:55:05 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yizh1977.spaces.live.com/blog/cns!2B3776EFF823A0D5!457/comments/feed.rss</wfw:commentRss><wfw:comment>http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!457.entry#comment</wfw:comment><dcterms:modified>2008-04-07T04:31:31Z</dcterms:modified></item><item><title>Linux下oracle常见安装错误</title><link>http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!448.entry</link><description>&lt;p&gt;&lt;strong&gt;错误一：&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt; &lt;p&gt;/tmp/OraInstall2007-12-30_02-16-11PM/jre/1.4.2/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directory occurred.. &lt;p&gt;原因是：缺少支持打印的图形化动态链接库libXp.so.6 &lt;p&gt;这个错误是由于缺少系统安装包，在RHEL5以前的版本，可以安装xorg-x11-deprecated-libs包&lt;a href="http://clk.qunsee.com/click/click.php?cpid=12&amp;amp;ads_id=24&amp;amp;pid=99002480&amp;amp;cid=2487&amp;amp;url=http://www.dell.com.cn&amp;amp;k=%u5373%u53EF&amp;amp;s=http://www.ixdba.net/article/f2/400.html&amp;amp;rn=596296&amp;amp;v=1&amp;amp;ref=http://www.google.cn/search%3Fhl%3Dzh-CN%26q%3Doracle+libawt%26meta%3D%26aq%3D0&amp;amp;province=%u6C5F%u82CF&amp;amp;city=%u82CF%u5DDE"&gt;即可&lt;/a&gt;，这个安装包可以在系统光盘第三张盘中&lt;a href="http://clk.qunsee.com/click/click.php?cpid=510&amp;amp;ads_id=47&amp;amp;pid=99002480&amp;amp;cid=2487&amp;amp;url=http://www.qunsee.com/adpage.php&amp;amp;k=%u627E%u5230&amp;amp;s=http://www.ixdba.net/article/f2/400.html&amp;amp;rn=429630&amp;amp;v=1&amp;amp;ref=http://www.google.cn/search%3Fhl%3Dzh-CN%26q%3Doracle+libawt%26meta%3D%26aq%3D0&amp;amp;province=%u6C5F%u82CF&amp;amp;city=%u82CF%u5DDE"&gt;找到&lt;/a&gt;（对于redhat as4.2以前，redhat as4.4是在第四张安装光盘） &lt;p&gt;&lt;a href="http://www.ixdba.net"&gt;&lt;strong&gt;IXDBA.NET技术社区&lt;/strong&gt;&lt;/a&gt; &lt;p&gt;我下载的文件如下： &lt;p&gt;xorg-x11-deprecated-libs-6.8.2-31.i386.rpm &lt;p&gt;&lt;strong&gt;错误二：&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt; &lt;p&gt;Exception :java.lang.UnsatisfiedLinkError:/usr/java/j2sdk1.4.2_06/jre/lib/i386/libawt.so: libXt.so.6: cannot open shared object file: No such file or directory&lt;br&gt;这个错误是也是由于缺少系统安装包造成的，只需安装XFree86-libs包即可，这个安装包可以在系统光盘中找到。 &lt;p&gt;&lt;strong&gt;在上面两个错误如果出现在&lt;/strong&gt;&lt;strong&gt;redhat as5&lt;/strong&gt;&lt;strong&gt;版本中，&lt;a href="http://clk.qunsee.com/click/click.php?cpid=12&amp;amp;ads_id=29&amp;amp;pid=99002480&amp;amp;cid=2487&amp;amp;url=http://www.chinahr.com/&amp;amp;k=%u89E3%u51B3&amp;amp;s=http://www.ixdba.net/article/f2/400.html&amp;amp;rn=387037&amp;amp;v=1&amp;amp;ref=http://www.google.cn/search%3Fhl%3Dzh-CN%26q%3Doracle+libawt%26meta%3D%26aq%3D0&amp;amp;province=%u6C5F%u82CF&amp;amp;city=%u82CF%u5DDE"&gt;解决&lt;/a&gt;如下：&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt; &lt;p&gt;&lt;strong&gt;在&lt;/strong&gt;&lt;strong&gt;RHEL5&lt;/strong&gt;&lt;strong&gt;中上面的包被&lt;/strong&gt;&lt;strong&gt;libXp&lt;/strong&gt;&lt;strong&gt;所取代了，因此&lt;/strong&gt;&lt;strong&gt;rpm -ivh libXp-1.0.0-8.i386.rpm&lt;/strong&gt;&lt;strong&gt;将包打上后问题即可解决。&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt; &lt;p&gt;&lt;strong&gt;错误三：&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt; &lt;p&gt;error while loading shared libraries: libstdc++-libc6.1-1.so.2 &lt;p&gt;只用执行如下操作 ln -s libstdc++-libc6.2-2.so.3 libstdc++-libc6.1-1.so.2 &lt;p&gt;参考案例 &lt;p&gt;&lt;strong&gt;案例一：&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt; &lt;p&gt;在RHEL5上&lt;a href="http://clk.qunsee.com/click/click.php?cpid=12&amp;amp;ads_id=63&amp;amp;pid=99002480&amp;amp;cid=2487&amp;amp;url=http://www.morphing.cn/%3Faction-channel-name-magzine&amp;amp;k=%u6D4B%u8BD5&amp;amp;s=http://www.ixdba.net/article/f2/400.html&amp;amp;rn=454630&amp;amp;v=1&amp;amp;ref=http://www.google.cn/search%3Fhl%3Dzh-CN%26q%3Doracle+libawt%26meta%3D%26aq%3D0&amp;amp;province=%u6C5F%u82CF&amp;amp;city=%u82CF%u5DDE"&gt;测试&lt;/a&gt;安装oracle10g，本以为之前转过11g，这次会比较顺利，结果还是遇到两个问题。 &lt;p&gt;首先，在执行runInstaller时，系统报错： &lt;p&gt;You do not have sufficient permissions to access the inventory '/oracle11g/oraInventory'. Installation cannot continue. Make sure that you have read/write permissions to the inventory directory and restart the installer.: Permission denied &lt;p&gt;这里采用的是新建一个10g&lt;a href="http://clk.qunsee.com/click/click.php?cpid=510&amp;amp;ads_id=46&amp;amp;pid=99002480&amp;amp;cid=2487&amp;amp;url=http://www.qunsee.com/sitepage.php&amp;amp;k=%u7528%u6237&amp;amp;s=http://www.ixdba.net/article/f2/400.html&amp;amp;rn=770370&amp;amp;v=1&amp;amp;ref=http://www.google.cn/search%3Fhl%3Dzh-CN%26q%3Doracle+libawt%26meta%3D%26aq%3D0&amp;amp;province=%u6C5F%u82CF&amp;amp;city=%u82CF%u5DDE"&gt;用户&lt;/a&gt;的方法让10g，11g并存，实际上在启动安装程序的时候，oracle会去找/etc/&lt;strong&gt;oraInst.loc&lt;/strong&gt;&lt;strong&gt;和&lt;/strong&gt;oratab这两个文件（hp是&lt;strong&gt;/var/opt/oracle&lt;/strong&gt;&lt;strong&gt;）&lt;/strong&gt; &lt;p&gt;而在oraInst.loc里面定义了inventory_loc的位置和inst_group，由于之前装过了一个11g，里面的定义都是针对11g用户设置的，所以才会报错。解决办法是执行&lt;strong&gt;runInstaller -invPtrLoc /oracle10g/oraInst.loc&lt;/strong&gt; 命令就可以绕过去了，oracle会创建一个新的loc文件。 &lt;p&gt;上一步成功通过之后，紧接着报了下面的错： &lt;p&gt;Exception java.lang.UnsatisfiedLinkError: /tmp/OraInstall2007-08-30_02-16-11PM/jre/1.4.2/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directory occurred..&lt;br&gt;java.lang.UnsatisfiedLinkError: /tmp/OraInstall2007-08-30_02-16-11PM/jre/1.4.2/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directory &lt;p&gt;在RHEL5以前这个错误是因为缺少XFree86-libs或xorg-x11-deprecated-libs这两个包其中一个（版本不同包不同），而在RHEL5中前面的包被libXp所取代了，因此rpm -ivh libXp-1.0.0-8.i386.rpm将包打上后问题解决。之后一切顺利。 &lt;p&gt;&lt;strong&gt;案例二：&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt; &lt;p&gt;参考 http://moto.debian.org.tw/viewtopic.php?t=8055&amp;amp;sid=eb2524337903c5af7ce1e839e0a35b68&lt;br&gt;进行前期的安装准备&lt;br&gt;在开始安装时出现以下错误：&lt;br&gt;对于error while loading shared libraries: libstdc++-libc6.1-1.so.2&lt;br&gt;我的解决办法是&lt;br&gt;ln -s libstdc++-libc6.2-2.so.3 libstdc++-libc6.1-1.so.2&lt;br&gt;对于&lt;br&gt;Exception :java.lang.UnsatisfiedLinkError:/usr/java/j2sdk1.4.2_06/jre/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directory&lt;br&gt;的解决办法是&lt;br&gt;apt-get install libXp.so.6&lt;br&gt;apt-get install libXt.so.6&lt;br&gt;apt-get install libxtst6 &lt;p&gt;&lt;strong&gt;案例三：&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt; &lt;p&gt;在RH Linux7.3上使用JasperReport作为报表引擎时，碰到了一样的问题：&lt;br&gt;Exception :java.lang.UnsatisfiedLinkError:/usr/java/j2sdk1.4.2_06/jre/lib/i386/libawt.so: libXt.so.6: cannot open shared object file: No such file or directory&lt;br&gt;在各位前面回复的提示下，经过一上午的google，终于得以解决这个问题&lt;br&gt;原因是：缺少支持打印的图形化动态链接库libXp.so.6（也许还有相关的其他库）&lt;br&gt;解决办法：下载并安装XFree86-libs-4.2.0-8.i386.rpm，/usr/X11R6/lib下就会出现&lt;a href="http://clk.qunsee.com/click/click.php?cpid=12&amp;amp;ads_id=24&amp;amp;pid=99002480&amp;amp;cid=2487&amp;amp;url=http://www.dell.com.cn&amp;amp;k=%u9700%u8981&amp;amp;s=http://www.ixdba.net/article/f2/400.html&amp;amp;rn=303704&amp;amp;v=1&amp;amp;ref=http://www.google.cn/search%3Fhl%3Dzh-CN%26q%3Doracle+libawt%26meta%3D%26aq%3D0&amp;amp;province=%u6C5F%u82CF&amp;amp;city=%u82CF%u5DDE"&gt;需要&lt;/a&gt;的libXp.so.6.2&lt;br&gt;附上XFree86-libs-4.2.0-8.i386.rpm的一个下载地址：&lt;br&gt;&lt;a href="ftp://ftp.nluug.nl/vol/1/schoollan/os/linux/RPMS/XFree86-libs-4.2.0-8.i386.rpm"&gt;ftp://ftp.nluug.nl/vol/1/schoollan/os/linux/RPMS/XFree86-libs-4.2.0-8.i386.rpm&lt;/a&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=3114088440382333141&amp;page=RSS%3a+Linux%e4%b8%8boracle%e5%b8%b8%e8%a7%81%e5%ae%89%e8%a3%85%e9%94%99%e8%af%af&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yizh1977.spaces.live.com&amp;amp;GT1=yizh1977"&gt;</description><comments>http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!448.entry#comment</comments><guid isPermaLink="true">http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!448.entry</guid><pubDate>Tue, 18 Mar 2008 05:08:18 GMT</pubDate><slash:comments>1</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yizh1977.spaces.live.com/blog/cns!2B3776EFF823A0D5!448/comments/feed.rss</wfw:commentRss><wfw:comment>http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!448.entry#comment</wfw:comment><dcterms:modified>2008-03-18T05:08:18Z</dcterms:modified></item><item><title>Oracle 10g 在centos 5 中的安装</title><link>http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!444.entry</link><description>&lt;p&gt;整个过程,安装比较简单，最近参加了一个It pub的Oracle培训，需要实践一些东西，所以就安装一个来玩,记录一下步骤 :) oracle的安装，开始的时候总是会遇到一些麻烦。但只要按照以下步骤和环境来安装，应该100％可以成功的。其实也就是修改6个文件，来改变环境参数,建立oracle用户和组，建立oracle安装文件夹，并把oracle解压到这个文件夹进行安装 。关于电脑配置，看Install guide吧。 
&lt;p&gt;1，安装Centos final 版本 
&lt;p&gt;2，检查软件环境，需要安装的软件包为（用yum就好了，时间有点长，我Centos默认安装，大概有50多M）：&lt;br&gt;binutils&lt;br&gt;compat-libstdc++&lt;br&gt;elfutils-libelf&lt;br&gt;elfutils-libelf-devel&lt;br&gt;glibc&lt;br&gt;glibc-common&lt;br&gt;glibc-devel&lt;br&gt;gcc&lt;br&gt;gcc-c++&lt;br&gt;libaio&lt;br&gt;libaio-devel&lt;br&gt;libgcc&lt;br&gt;libstdc++&lt;br&gt;libstdc++-devel&lt;br&gt;make&lt;br&gt;sysstat&lt;br&gt;unixODBC&lt;br&gt;unixODBC-devel&lt;br&gt;openmotif21&lt;br&gt;setarch&lt;br&gt;compat-db&lt;br&gt;compat-gcc&lt;br&gt;compat-gcc-c++&lt;br&gt;compat-libstdc++&lt;br&gt;compat-libstdc++-devel 
&lt;p&gt;  
&lt;p&gt;3，现在开始可以安装,就是下图中的几个步骤，三个颜色表示了三大步骤：建立oracle用户和组，建立oracle安装文件夹，修改参数，其实安装很简单了，呵呵，看下图，我就做了这几步骤。 
&lt;p&gt;&lt;a href="http://byfiles.storage.msn.com/y1pW9q1nnvcwsh8uHId0R67zVTC-t7p6f-xMIEYkzUVzCEf2VsRCtGaC7seVHRofH6aIbQskrP4_9c?PARTNER=WRITER"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px" height=432 alt=vi1 src="http://h3z6uq.bay.livefilestore.com/y1phq7XJa7N1ryTw41wIJlOmPqt5T7NRsGGVUipu5iUpe2aUEw3eBamdV3xPdIrA2gyVIVAPj33A9RsLkVeBKurXw?PARTNER=WRITER" width=604 border=0&gt;&lt;/a&gt; 
&lt;p&gt;4，建立用户和组： 
&lt;p&gt;/usr/sbin/groupadd oinstall  #创建组&lt;br&gt;/usr/sbin/groupadd dba #创建组&lt;br&gt;/usr/sbin/useradd -g oinstall -G dba oracle ＃创建用户，并设定用户组&lt;br&gt;passwd oracle ＃修改密码，安装oracle需要用此账户登陆大Xwindows中，su oracle之后出现java环境错误。 
&lt;p&gt;5，建立目录和权限 
&lt;p&gt;mkdir /oracle ＃创建文件夹&lt;br&gt;mkdir /oracle/10g ＃创建文件夹&lt;br&gt;chown -R oracle:oinstall /oracle ＃给oracle用户足够权限，没有做这一步，我第一次安装的时候就出现问题，大概是oui出现权限不足 
&lt;p&gt;6，来修改变量。其中,bash_profile需要在建立了oracle用户之后才能修改，修改的时候，保留各文件的原始参数，直接将下面的参数复制到文件最后就可以了。&lt;br&gt;
&lt;p&gt;1.vi /etc/sysctl.conf&lt;br&gt;kernel.shmmni = 4096&lt;br&gt;kernel.sem = 250 32000 100 128&lt;br&gt;net.ipv4.ip_local_port_range = 1024 65000&lt;br&gt;net.core.rmem_default=4194304&lt;br&gt;net.core.rmem_max=4194304&lt;br&gt;net.core.wmem_default=262144&lt;br&gt;net.core.wmem_max=262144 
&lt;p&gt;2.vi /etc/security/limits.conf&lt;br&gt;oracle soft nproc 2047&lt;br&gt;oracle hard nproc 16384&lt;br&gt;oracle soft nofile 1024&lt;br&gt;oracle hard nofile 65536 
&lt;p&gt;3.vi /etc/pam.d/login&lt;br&gt;session required /lib/security/pam_limits.so&lt;br&gt;session required pam_limits.so 
&lt;p&gt;4.vi /etc/profileif [ $USER = &amp;quot;oracle&amp;quot; ]; then&lt;br&gt;if [ $SHELL = &amp;quot;/bin/ksh&amp;quot; ]; then&lt;br&gt;ulimit -p 16384&lt;br&gt;ulimit -n 65536&lt;br&gt;else&lt;br&gt;ulimit -u 16384 -n 65536&lt;br&gt;fi&lt;br&gt;fi 
&lt;p&gt;5.cd /home/oracle&lt;br&gt;vi .bash_profile&lt;br&gt;ORACLE_BASE=/oracle&lt;br&gt;ORACLE_HOME=$ORACLE_BASE/10g&lt;br&gt;ORACLE_SID=wilson&lt;br&gt;PATH=$ORACLE_HOME/bin:$PATH&lt;br&gt;export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH 
&lt;p&gt;6，vi /etc/redhat-release&lt;br&gt;CentOS release 5 (Final) 修改成redhat 4 
&lt;p&gt;7，最后一步，注销你的root，使用oracle登陆xwindows，到安装目录下： 
&lt;p&gt;有点遗憾就是用了centos中文，所以界面有点难看～～ 
&lt;p&gt; 
&lt;p&gt;英文上重新弄了下，完全通过！！&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=3114088440382333141&amp;page=RSS%3a+Oracle+10g+%e5%9c%a8centos+5+%e4%b8%ad%e7%9a%84%e5%ae%89%e8%a3%85&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yizh1977.spaces.live.com&amp;amp;GT1=yizh1977"&gt;</description><comments>http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!444.entry#comment</comments><guid isPermaLink="true">http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!444.entry</guid><pubDate>Fri, 14 Mar 2008 03:20:39 GMT</pubDate><slash:comments>1</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yizh1977.spaces.live.com/blog/cns!2B3776EFF823A0D5!444/comments/feed.rss</wfw:commentRss><wfw:comment>http://yizh1977.spaces.live.com/Blog/cns!2B3776EFF823A0D5!444.entry#comment</wfw:comment><dcterms:modified>2008-03-18T05:16:50Z</dcterms:modified></item></channel></rss>