﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-Thinking in Mobile &lt;p&gt;&lt;font color='#DF7401'&gt;学海无涯乐作舟&lt;/font&gt;&lt;/p&gt;</title><link>http://www.blogjava.net/wuynng/</link><description /><language>zh-cn</language><lastBuildDate>Sun, 05 Apr 2026 22:32:40 GMT</lastBuildDate><pubDate>Sun, 05 Apr 2026 22:32:40 GMT</pubDate><ttl>60</ttl><item><title>VMware 7 安装 Ubuntu-10.04 Server 过程</title><link>http://www.blogjava.net/wuynng/articles/321807.html</link><dc:creator>W.Y.H</dc:creator><author>W.Y.H</author><pubDate>Tue, 25 May 2010 02:39:00 GMT</pubDate><guid>http://www.blogjava.net/wuynng/articles/321807.html</guid><wfw:comment>http://www.blogjava.net/wuynng/comments/321807.html</wfw:comment><comments>http://www.blogjava.net/wuynng/articles/321807.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wuynng/comments/commentRss/321807.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wuynng/services/trackbacks/321807.html</trackback:ping><description><![CDATA[<p>VMware 7 安装 Ubuntu-10.04 Server 过程</p>
<p>1、从http://releases.ubuntu.com/lucid/下载http://releases.ubuntu.com/lucid/ubuntu-10.04-server-i386.iso光盘镜像。</p>
<p>2、运行VMware，使用&#8220;新建虚拟机向导&#8221;创建虚拟机，跟着向导一步步操作：操作系统--&#8220;Linux&#8221;，版本--&#8220;Ubuntu&#8221;，...，网络连接--&#8220;使用桥接网络&#8221;。</p>
<p>3、在虚拟机设置的&#8220;硬件&#8221;选项卡，选择&#8220;CD/DVD&#8221;，选择右边使用ISO镜像文件单选框，指定到我们下载的ubuntu-10.04-server-i386.iso光盘镜像文件。</p>
<p>4、在VMware中启动我们新创建的虚拟机，过一会儿就出现ubuntu的安装页面，选择语言English，不要选择简体中文，否则安装过程中会花大量时间下载中文相关包。</p>
<p>5、因为是用VMware安装，为节省时间，所以分区选择自动分区。</p>
<p>6、安装过程大概需要20~30分钟。</p>
<p>7、为方便使用xftp从虚拟机中上传下载文件，修改默认root密码：sudo passwd root。</p>
<p>8、从光盘安装必要的包<br />
1）修改apt的源<br />
#cd /etc/apt<br />
#cp sources.list sources.list.old<br />
#vi /etc/apt/sources.list，保留第一行的源，记不太清了，大概是&#8220; deb ...CD-ROM ...&#8221;，其它的用#注释掉。<br />
2）挂载光驱<br />
#mount /dev/cdrom /cdrom<br />
#apt-cdrom -d /cdrom add<br />
#apt-get update<br />
3）安装软件包，主要是构建工具和linux的头文件，这些是编译软件必须的。<br />
#apt-get install build-essential linux-headers-`uname -r`</p>
<p>9、安装VMware Tools for Linux<br />
1）需要linux.iso文件，完整版的VMware 7已经包含有，如果使用精简版就没有了，需要单独下载，到google里搜一下试试（基本上找不到VMware 7.0版本的）。<br />
2）以root登录虚拟机<br />
3）按Ctrl + Alt，从&#8220;虚拟机&#8221;菜单选择&#8220;安装VMware tools...&#8221;，虚拟机的底部会有提示是否加载成功。<br />
4）安装<br />
#mount /dev/cdrom /cdrom<br />
#cd /cdrom<br />
#cp VMwareTools-8.1.4-227600.tar.gz ~<br />
#cd ~<br />
#tar -zxf VMsareTools-8.1.4-227600.tar.gz<br />
#cd vmware-tools-distrib<br />
#./vmware-install.pl，按提示一路回车即可。</p>
<p>10、安装JDK<br />
1）需要从网上下载，修改一下apt的源<br />
#cp sources.list sources.list.cdrom，备份一下<br />
#vi sources.list，用下面的内容替换<br />
deb http://cn.archive.ubuntu.com/ubuntu/ lucid main restricted universe multiverse<br />
deb http://cn.archive.ubuntu.com/ubuntu/ lucid-security main restricted universe multiverse<br />
deb http://cn.archive.ubuntu.com/ubuntu/ lucid-updates main restricted universe multiverse<br />
deb http://cn.archive.ubuntu.com/ubuntu/ lucid-proposed main restricted universe multiverse<br />
deb http://cn.archive.ubuntu.com/ubuntu/ lucid-backports main restricted universe multiverse<br />
deb-src http://cn.archive.ubuntu.com/ubuntu/ lucid main restricted universe multiverse<br />
deb-src http://cn.archive.ubuntu.com/ubuntu/ lucid-security main restricted universe multiverse<br />
deb-src http://cn.archive.ubuntu.com/ubuntu/ lucid-updates main restricted universe multiverse<br />
deb-src http://cn.archive.ubuntu.com/ubuntu/ lucid-proposed main restricted universe multiverse<br />
deb-src http://cn.archive.ubuntu.com/ubuntu/ lucid-backports main restricted universe multiverse<br />
#apt-get update，重新更新一下包列表<br />
2）安装OpenJDK，在lucid上已经找不到sun jdk的安装包了。<br />
#apt-get install default-jdk，提示需要下载60多M，回车确认，开始下载并安装。<br />
#java -version，可以看到是1.6版本的Java</p>
<p>顺便截个图：</p>
<p><img height="544" alt="" src="http://www.blogjava.net/images/blogjava_net/wuynng/2-2.png" width="658" border="0" /><br />
&nbsp;</p>
<img src ="http://www.blogjava.net/wuynng/aggbug/321807.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wuynng/" target="_blank">W.Y.H</a> 2010-05-25 10:39 <a href="http://www.blogjava.net/wuynng/articles/321807.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何生成WAS的Heap dump文件</title><link>http://www.blogjava.net/wuynng/articles/308059.html</link><dc:creator>W.Y.H</dc:creator><author>W.Y.H</author><pubDate>Sat, 02 Jan 2010 16:24:00 GMT</pubDate><guid>http://www.blogjava.net/wuynng/articles/308059.html</guid><wfw:comment>http://www.blogjava.net/wuynng/comments/308059.html</wfw:comment><comments>http://www.blogjava.net/wuynng/articles/308059.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wuynng/comments/commentRss/308059.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wuynng/services/trackbacks/308059.html</trackback:ping><description><![CDATA[<h3><a name="N101D8"><span class="atitle">生成Heap dump文件</span></a></h3>
<p>WAS6.1中，在使用IBM JDK的平台上，可以直接使用以下的方法，随时生成所需的heapdump文件。如果在性能诊断顾问程序配置里面选中了"启用自动堆转储收集，则可以自动在WebSphere profile所在的路径下（例如/opt/IBM/WebSphere/WAS6.1/profiles/AppSrv01）生成heapdump文件，备用户进行分析。</p>
<p>在使用IBM SDK的平台上，例如AIX, Linux和Windows，在启用了性能诊断顾问工具后，如果探测到有内存泄漏发生，WebSphere会自动生成两个heapdump文件，供后续分析使用。</p>
<p>我们在任何时候，可以随时手动生成所需的heap dump文件。在WAS6.1 profile的bin目录下，首先运行wsadmin 脚本客户端，然后可以调用generateHeapDump操作来完成。</p>
<p>关键步骤：</p>
<p>1． 找到JVM对象名字。</p>
<table id="table21" cellspacing="0" cellpadding="0" width="81%" border="0">
    <tbody>
        <tr>
            <td class="code-outline" bgcolor="#f9f9f9">
            <pre class="content">&lt;wsadmin&gt; set objectName
            WebSphere:type=JVM,process=&lt;WebSphere服务器名字&gt;,node=&lt;节点名字&gt;,*]</pre>
            </td>
        </tr>
    </tbody>
</table>
<p>2． 对JVM MBean调用generateHeapDump操作。</p>
<table id="table22" cellspacing="0" cellpadding="0" width="81%" border="0">
    <tbody>
        <tr>
            <td class="code-outline" bgcolor="#f9f9f9">
            <pre class="content">&lt;wsadmin&gt; $AdminControl invoke $objectName generateHeapDump</pre>
            </td>
        </tr>
    </tbody>
</table>
<br />
例如：
<table class="content" id="table23" cellspacing="0" cellpadding="0" width="81%" border="0">
    <tbody>
        <tr>
            <td class="code-outline" bgcolor="#f9f9f9">
            <pre class="content">[root@csspvm bin]# pwd
            /opt/IBM/WebSphere/WAS6.1/profiles/AppSrv01/bin
            [root@csspvm bin]# ./wsadmin.sh -username root -password demo4you
            WASX7209I: Connected to process "server1" on node csspvmNode02 using SOAP
            connector;  The type of process is: UnManagedProcess
            WASX8011W: AdminTask object is not available.
            WASX7029I: For help, enter: "$Help help"
            wsadmin&gt;set objectName [$AdminControl queryNames
            WebSphere:type=JVM,process=server1, node=csspvmNode02,*]
            WebSphere:name=JVM,process=server1,platform=proxy,node=csspvmNode02,
            j2eeType=JVM,J2EEServer=server1,
            version=6.1.0.0,type=JVM,mbeanIdentifier=JVM,cell=csspvmNode02Cell,spec=1.0
            wsadmin&gt;$AdminControl invoke $ objectName generateHeapDump
            /opt/IBM/WebSphere/WAS6.1/profiles/AppSrv01/./heapdump.20060904.075650.3576.phd
            wsadmin&gt;quit</pre>
            </td>
        </tr>
    </tbody>
</table>
<p>理想情况下，在探测到问题时，尽快生成一个初始的heap dump，然后密切监控内存使用情况，等到泄漏了足够的内存的时候，再生成另外一个heap dump，这样可以对比分析以更准确地找到泄漏的原因。</p>
<p>注： 生成HeapDump文件的过程是比较耗资源的，所以请只在必须的时候做这样的操作。</p>
<img src ="http://www.blogjava.net/wuynng/aggbug/308059.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wuynng/" target="_blank">W.Y.H</a> 2010-01-03 00:24 <a href="http://www.blogjava.net/wuynng/articles/308059.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>链接：WebSphere Application Server之wsadmin学习(一) </title><link>http://www.blogjava.net/wuynng/articles/308058.html</link><dc:creator>W.Y.H</dc:creator><author>W.Y.H</author><pubDate>Sat, 02 Jan 2010 15:58:00 GMT</pubDate><guid>http://www.blogjava.net/wuynng/articles/308058.html</guid><wfw:comment>http://www.blogjava.net/wuynng/comments/308058.html</wfw:comment><comments>http://www.blogjava.net/wuynng/articles/308058.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wuynng/comments/commentRss/308058.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wuynng/services/trackbacks/308058.html</trackback:ping><description><![CDATA[<a title="WebSphere Application Server之wsadmin学习(一) " href="http://www.blogjava.net/fastzch/archive/2008/09/18/229797.html">http://www.blogjava.net/fastzch/archive/2008/09/18/229797.html</a>
  <img src ="http://www.blogjava.net/wuynng/aggbug/308058.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wuynng/" target="_blank">W.Y.H</a> 2010-01-02 23:58 <a href="http://www.blogjava.net/wuynng/articles/308058.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle JOB相关资料介绍</title><link>http://www.blogjava.net/wuynng/articles/302783.html</link><dc:creator>W.Y.H</dc:creator><author>W.Y.H</author><pubDate>Wed, 18 Nov 2009 04:46:00 GMT</pubDate><guid>http://www.blogjava.net/wuynng/articles/302783.html</guid><wfw:comment>http://www.blogjava.net/wuynng/comments/302783.html</wfw:comment><comments>http://www.blogjava.net/wuynng/articles/302783.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wuynng/comments/commentRss/302783.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wuynng/services/trackbacks/302783.html</trackback:ping><description><![CDATA[<p>Oracle JOB相关资料介绍 <br />
&nbsp;<br />
（一）关于Oracle JOB的用法<br />
一、设置初始化参数 job_queue_processes</p>
<p>　　sql&gt; alter system set job_queue_processes=n;（n&gt;0）<br />
　　job_queue_processes最大值为1000<br />
　　<br />
二、查看job queue 后台进程</p>
<p>SQL&gt; select name,description from v$bgprocess;</p>
<p>NAME&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DESCRIPTION<br />
---------- --------------------------------------------<br />
PMON&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; process cleanup<br />
DIAG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; diagnosibility process<br />
FMON&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; File Mapping Monitor Process<br />
LMON&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global enqueue service monitor<br />
LMD0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global enqueue service daemon 0<br />
LMS0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global cache service process 0<br />
LMS1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global cache service process 1<br />
LMS2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global cache service process 2<br />
LMS3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global cache service process 3<br />
LMS4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global cache service process 4<br />
LMS5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global cache service process 5<br />
。。。。。。。。。。。。。。。。。。。。<br />
　　<br />
三、dbms_job package 语法介绍</p>
<p>　　包含以下子过程： <br />
　　<br />
　　Broken()过程。<br />
　　change()过程。<br />
　　Interval()过程。<br />
　　Isubmit()过程。<br />
　　Next_Date()过程。<br />
　　Remove()过程。<br />
　　Run()过程。<br />
　　Submit()过程。<br />
　　User_Export()过程。<br />
　　What()过程。<br />
　　<br />
　　A、Broken()过程更新一个已提交的工作的状态，典型地是用来把一个已破工作标记为未破工作。<br />
　　&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这个过程有三个参数：job ，broken与next_date。<br />
　　<br />
　　PROCEDURE Broken (job&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IN binary_integer,<br />
　　　　　　　　　　　&nbsp;&nbsp;&nbsp;&nbsp; Broken&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IN boolean,<br />
　　　　　　　　　　　&nbsp;&nbsp;&nbsp;&nbsp; next_date&nbsp;&nbsp; IN date :=SYSDATE)<br />
　　<br />
　　job参数是工作号，它在问题中唯一标识工作。<br />
　　broken参数指示此工作是否将标记为破——TRUE说明此工作将标记为破，而FLASE说明此工作将标记为未破。<br />
　　next_date参数指示在什么时候此工作将再次运行。此参数缺省值为当前日期和时间。<br />
　　job如果由于某种原因未能成功之行，oracle将重试16次后，还未能成功执行，将被标记为broken重新启动状态为broken的job，有如下两种方式;<br />
　　a、利用dbms_job.run()立即执行该job<br />
　　　 sql&gt;begin<br />
　　　 sql&gt;dbms_job.run(:jobno) 该jobno为submit过程提交时返回的job number<br />
　　　 sql&gt;end;<br />
　　　 sql&gt;/<br />
　　b、利用dbms_job.broken()重新将broken标记为false<br />
　　　 sql&gt;begin<br />
　　　 sql&gt;dbms_job.broken (:job,false,next_date)<br />
　　　 sql&gt;end;<br />
　　　 sql&gt;/<br />
　　B、Change()过程用来改变指定工作的设置。<br />
　　&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这个过程有四个参数：job、what 、next_date与interval。<br />
　　<br />
　　PROCEDURE Change (job　　　　 IN binary_integer,<br />
　　　　　　　　　　　&nbsp;&nbsp;&nbsp;&nbsp; What　　　 IN varchar2,<br />
　　　　　　　　　　　&nbsp;&nbsp;&nbsp;&nbsp; next_date　 IN date,<br />
　　　　　　　　　　　&nbsp;&nbsp;&nbsp;&nbsp; interval　&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IN varchar2)<br />
　　<br />
　　此job参数是一个整数值，它唯一标识此工作。<br />
　　What参数是由此工作运行的一块PL/SQL代码块。<br />
　　next_date参数指示何时此工作将被执行。<br />
　　interval参数指示一个工作重执行的频度。<br />
　　<br />
　　C、Interval()过程用来显式地设置重执行一个工作之间的时间间隔数。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这个过程有两个参数：job与interval。<br />
　　<br />
　　PROCEDURE Interval (job　　　IN binary_integer,<br />
　　　　　　　　　　　　 Interval&nbsp;&nbsp;&nbsp; IN varchar2)<br />
　　<br />
　　job参数标识一个特定的工作。interval参数指示一个工作重执行的频度。<br />
　　<br />
　　D、ISubmit()过程用来用特定的工作号提交一个工作。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这个过程有五个参数：job、what、next_date、interval与no_parse。<br />
　　<br />
　　PROCEDURE ISubmit (job　　　 IN binary_ineger,<br />
　　　　　　　　　　　 What　　　 IN varchar2,<br />
　　　　　　　　　　　 next_date&nbsp;&nbsp;&nbsp;&nbsp; IN date,<br />
　　　　　　　　　　　 interval　&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IN varchar2,<br />
　　　　　　　　　　　 no_parse　 IN booean:=FALSE)<br />
　　<br />
　　这个过程与Submit()过程的唯一区别在于此job参数作为IN型参数传递且包括一个由开发者提供的工作号。如果提供的工作号已被使用，将产生一个错误。<br />
　　<br />
　　E、Next_Date()过程用来显式地设定一个工作的执行时间。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这个过程接收两个参数：job与next_date。<br />
　　<br />
　　PROCEDURE Next_Date(job　　　　 IN binary_ineger,<br />
　　　　　　　　　　　　&nbsp;&nbsp;&nbsp;&nbsp; next_date　 IN date)<br />
　　job标识一个已存在的工作。next_date参数指示了此工作应被执行的日期与时间。<br />
　　<br />
　　F、Remove()过程来删除一个已计划运行的工作。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这个过程接收一个参数：<br />
　　<br />
　　PROCEDURE Remove(job IN　binary_ineger);<br />
　　<br />
　　job参数唯一地标识一个工作。这个参数的值是由为此工作调用Submit()过程返回的job参数的值。已正在运行的工作不能由调用过程序删除。<br />
　　<br />
　　G、Run()过程用来立即执行一个指定的工作。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这个过程只接收一个参数：<br />
　　<br />
　　PROCEDURE Run(job IN binary_ineger) <br />
　　<br />
　　job参数标识将被立即执行的工作。<br />
　　<br />
　　H、使用Submit()过程，工作被正常地计划好。<br />
　　&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这个过程有五个参数：job、what、next_date、interval与no_parse。<br />
　　<br />
　　PROCEDURE Submit ( job　　　&nbsp;&nbsp; OUT binary_ineger,<br />
　　　　　　　　　　　&nbsp;&nbsp;&nbsp;&nbsp; What　　　IN　varchar2,<br />
　　　　　　　　　　　&nbsp;&nbsp;&nbsp;&nbsp; next_date&nbsp;&nbsp; IN　date,<br />
　　　　　　　　　　　&nbsp;&nbsp;&nbsp;&nbsp; interval　&nbsp;&nbsp;&nbsp; IN　varchar2,<br />
　　　　　　　　　　　&nbsp;&nbsp;&nbsp;&nbsp; no_parse　IN　booean:=FALSE)<br />
　　<br />
　　job参数是由Submit()过程返回的binary_ineger。这个值用来唯一标识一个工作。<br />
　　what参数是将被执行的PL/SQL代码块。<br />
　　next_date参数指识何时将运行这个工作。<br />
　　interval参数何时这个工作将被重执行。<br />
　　no_parse参数指示此工作在提交时或执行时是否应进行语法分析——TRUE指示此PL/SQL代码在它第一次执行时应进行语法分析，而FALSE指示本PL/SQL代码应立即进行语法分析。<br />
　　<br />
　　I、User_Export()过程返回一个命令，此命令用来安排一个存在的工作以便此工作能重新提交。<br />
　　&nbsp;&nbsp;&nbsp; 此程序有两个参数：job与my_call。<br />
　　<br />
　　PROCEDURE User_Export(job　　　　IN binary_ineger,<br />
　　　　　　　　　　　　　&nbsp;&nbsp;&nbsp;&nbsp; my_call　　IN OUT varchar2)<br />
　　<br />
　　job参数标识一个安排了的工作。my_call参数包含在它的当前状态重新提交此工作所需要的正文。<br />
　　<br />
　　J、What()过程应许在工作执行时重新设置此正在运行的命令。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这个过程接收两个参数：job与what。<br />
　　<br />
　　PROCEDURE What (job　IN binary_ineger,<br />
　　　　　　　　　　&nbsp;&nbsp;&nbsp; What IN OUT varchar2)<br />
　　job参数标识一个存在的工作。what参数指示将被执行的新的PL/SQL代码。<br />
　　<br />
四、查看相关job信息</p>
<p>　　a、相关视图</p>
<p>　　dba_jobs<br />
　　all_jobs<br />
　　user_jobs<br />
　　dba_jobs_running 包含正在运行job相关信息<br />
　　<br />
　　查看相关信息<br />
　　<br />
　　SQL&gt;SELECT JOB, NEXT_DATE, NEXT_SEC, FAILURES, BROKEN FROM DBA_JOBS;<br />
　　<br />
　　正在运行的JOB相关信息<br />
　　<br />
　　SELECT SID, r.JOB, LOG_USER, r.THIS_DATE, r.THIS_SEC FROM DBA_JOBS_RUNNING r, DBA_JOBS j　WHERE r.JOB = j.JOB;<br />
　　</p>
<p>　　JOB QUEUE LOCK相关信息<br />
　　<br />
　　SELECT SID, TYPE, ID1, ID2 FROM V$LOCK WHERE TYPE = 'JQ';<br />
　　<br />
四、简单例子　　<br />
　　<br />
创建JOB<br />
begin<br />
sys.dbms_job.submit(job =&gt; :job,<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; what =&gt; 'P_CLEAR_PACKBAL;',<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; next_date =&gt; to_date('24-04-2008 05:44:09', 'dd-mm-yyyy hh24:mi:ss'),<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; interval =&gt; 'sysdate+ 1/360');<br />
commit;<br />
end;<br />
/　　<br />
（二）关于Oracle Job 语法和时间间隔的设定</p>
<p>begin<br />
sys.dbms_job.submit(job =&gt; :job,<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; what =&gt; 'P_CLEAR_PACKBAL;',<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; next_date =&gt; to_date('24-04-2008 05:44:09', 'dd-mm-yyyy hh24:mi:ss'),<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; interval =&gt; 'sysdate+ 1/360');<br />
commit;<br />
end;<br />
/</p>
<p>1:每分钟执行</p>
<p>Interval =&gt; TRUNC(sysdate,'mi') + 1/ (24*60)</p>
<p>2:每天定时执行</p>
<p>例如：每天的凌晨1点执行</p>
<p>Interval =&gt; TRUNC(sysdate) + 1 +1/ (24)</p>
<p>3:每周定时执行</p>
<p>例如：每周一凌晨1点执行</p>
<p>Interval =&gt; TRUNC(next_day(sysdate,'星期一'))+1/24</p>
<p>4:每月定时执行</p>
<p>例如：每月1日凌晨1点执行</p>
<p>Interval =&gt;TRUNC(LAST_DAY(SYSDATE))+1+1/24</p>
<p>5:每季度定时执行</p>
<p>例如每季度的第一天凌晨1点执行</p>
<p>Interval =&gt; TRUNC(ADD_MONTHS(SYSDATE,3),'Q') + 1/24</p>
<p>6:每半年定时执行</p>
<p>例如：每年7月1日和1月1日凌晨1点</p>
<p>Interval =&gt; ADD_MONTHS(trunc(sysdate,'yyyy'),6)+1/24</p>
<p>7:每年定时执行</p>
<p>例如：每年1月1日凌晨1点执行</p>
<p>Interval =&gt;ADD_MONTHS(trunc(sysdate,'yyyy'),12)+1/24</p>
<p>(三）Oracle JOB问题解决汇总</p>
<p>一。job的运行频率设置</p>
<p>1.每天固定时间运行，比如早上8:10分钟：Trunc(Sysdate+1) + (8*60+10)/24*60</p>
<p>2.Toad中提供的：</p>
<p>每天：trunc(sysdate+1)</p>
<p>每周：trunc(sysdate+7)</p>
<p>每月：trunc(sysdate+30)</p>
<p>每个星期日：next_day(trunc(sysdate),'SUNDAY')</p>
<p>每天6点：trunc(sysdate+1)+6/24</p>
<p>半个小时：sysdate+30/1440</p>
<p>3.每个小时的第15分钟运行，比如：8:15，9:15，10:15...：trunc(sysdate,'hh')+75/1440。原先我设置的是trunc(sysdate,'hh')+15/1440，发现居然不行。</p>
<p>二。JOB为什么不运行？</p>
<p>1.先来了解一下JOB的参数说明：与job相关的参数一个是job_queue_processes，这个是运行JOB时候所起的进程数，当然系统里面JOB大于这个数值后，就会有排队等候的，最小值是0，表示不运行JOB，最大值是36，在OS上对应的进程时SNPn，9i以后OS上管理JOB的进程叫CJQn。可以使用下面这个SQL确定目前有几个SNP/CJQ在运行。</p>
<p>select * from v$bgprocess，这个paddr不为空的snp/cjq进程就是目前空闲的进程，有的表示正在工作的进程。</p>
<p>另外一个是job_queue_interval，范围在1--3600之间，单位是秒，这个是唤醒JOB的process，因为每次snp运行完他就休息了，需要定期唤醒他，这个值不能太小，太小会影响数据库的性能。</p>
<p>2.诊断：先确定上面这两个参数设置是否正确，特别是第一个参数，设置为0了，所有JOB就不会跑，确认无误后，我们继续向下。</p>
<p>3.使用下面的SQL察看JOB的的broken,last_date和next_date，last_date是指最近一次job运行成功的结束时间，next_date是根据设置的频率计算的下次执行时间，根据这个信息就可以判断JOB上次是否正常，还可以判断下次的时间对不对，SQL如下：</p>
<p>select * from dba_jobs</p>
<p>有时候我们发现他的next_date是4000年1月1日，说明job要不就是在running，要不就是状态是break(broken=Y)，如果发现JOB的broken值为Y，找用户了解一下，确定该JOB是否可以broken，如果不能broken，那就把broken值修改成N，修改再使用上面的SQL察看就发现他的last_date已经变了，JOB即可正常运行，修改broken状态的SQL如下：</p>
<p>declare</p>
<p>BEGIN</p>
<p>DBMS_JOB.BROKEN(&lt;JOB_ID&gt;,FALSE);</p>
<p>END;</p>
<p>4.使用下面的SQL查询是否JOB还在Running</p>
<p>select * from dba_jobs_running</p>
<p>如果发现JOB已经Run了很久了还没有结束，就要查原因了。一般的JOB running时会锁定相关的相关的资源，可以查看一下v$access和v$locked_object这两个view，如果发现其他进程锁定了与JOB相关的Object，包括PKG/Function/Procedure/Table等资源，那么就要把其他进程删除，有必要的话，把JOB的进程也删除，再重新跑看看结果。</p>
<p>5.如果上面都正常，但是JOB还不run，怎么办？那我们要考虑把JOB进程重启一次，防止是SNP进程死了造成JOB不跑，指令如下：</p>
<p>alter system set job_queue_processes=0 --关闭job进程，等待5--10秒钟</p>
<p>alter system set job_quene_processes=5 --恢复原来的值</p>
<p>6.Oracle的BUG</p>
<p>Oracle9i里面有一个BUG，当计数器到497天时，刚好达到它的最大值，再计数就会变成-1，继续计数就变成0了，然后计数器将不再跑了。如果碰到这种情况就得重启数据库，我们这边有一个生产型的数据库版本是9205，就发生过这样一次问题，后来和用户约时间重启后就没问题了。但是其他的Oracle7345和Oracle8i的数据库没有发现这个问题。</p>
<p>7.数据库上的检查基本上就这多，如果JOB运行还有问题，那需要配合用户察看一下是否是程序本身的问题，比如处理的资料量大，或者网络速度慢等造成运行时过长，那就需要具体情况具体分析了。我们可以通过下面的SQL手工执行一下JOB看看：</p>
<p>declare</p>
<p>begin</p>
<p>dbms_job.run(&lt;job&gt;_ID)</p>
<p>end;</p>
<p>如果发现JOB执行不正常，就要结合程序具体分析一下。</p>
<p><br />
本文来自CSDN博客，转载请标明出处：http://blog.csdn.net/leiru/archive/2008/09/23/2968636.aspx</p>
<img src ="http://www.blogjava.net/wuynng/aggbug/302783.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wuynng/" target="_blank">W.Y.H</a> 2009-11-18 12:46 <a href="http://www.blogjava.net/wuynng/articles/302783.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle 9i 分区操作管理</title><link>http://www.blogjava.net/wuynng/articles/302403.html</link><dc:creator>W.Y.H</dc:creator><author>W.Y.H</author><pubDate>Sun, 15 Nov 2009 04:57:00 GMT</pubDate><guid>http://www.blogjava.net/wuynng/articles/302403.html</guid><wfw:comment>http://www.blogjava.net/wuynng/comments/302403.html</wfw:comment><comments>http://www.blogjava.net/wuynng/articles/302403.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wuynng/comments/commentRss/302403.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wuynng/services/trackbacks/302403.html</trackback:ping><description><![CDATA[<font face="Arial, Helvetica, sans-serif" color="#330099">Truncating Partitions(删除分区)</font><br />
方法1: 适合数据量较大的表<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #008080">--</span><span style="color: #008080">truncate&nbsp;名称为dec98的分区</span><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br />
<span style="color: #0000ff">ALTER</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">TABLE</span><span style="color: #000000">&nbsp;sales&nbsp;</span><span style="color: #0000ff">TRUNCATE</span><span style="color: #000000">&nbsp;PARTITION&nbsp;dec98;&nbsp;</span><span style="color: #008080"><img alt="" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br />
</span><span style="color: #0000ff"><span style="color: #008080">--</span><span style="color: #008080">重建全局索引</span><br />
ALTER</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">INDEX</span><span style="color: #000000">&nbsp;sales_area_ix&nbsp;REBUILD;&nbsp;</span></div>
<br />
<br />
参考: <a title="Managing Partitioned Tables and Indexes" href="http://download.oracle.com/docs/cd/B10501_01/server.920/a96521/partiti.htm#27573">Managing Partitioned Tables and Indexes</a><a href="http://download.oracle.com/docs/cd/B10501_01/server.920/a96521/partiti.htm#27573"></a></a>
<img src ="http://www.blogjava.net/wuynng/aggbug/302403.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wuynng/" target="_blank">W.Y.H</a> 2009-11-15 12:57 <a href="http://www.blogjava.net/wuynng/articles/302403.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>AIX常用命令</title><link>http://www.blogjava.net/wuynng/articles/301516.html</link><dc:creator>W.Y.H</dc:creator><author>W.Y.H</author><pubDate>Sat, 07 Nov 2009 01:15:00 GMT</pubDate><guid>http://www.blogjava.net/wuynng/articles/301516.html</guid><wfw:comment>http://www.blogjava.net/wuynng/comments/301516.html</wfw:comment><comments>http://www.blogjava.net/wuynng/articles/301516.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wuynng/comments/commentRss/301516.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wuynng/services/trackbacks/301516.html</trackback:ping><description><![CDATA[AIX常用命令　&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; <br />
目录操作&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
命令名 功能描述 使用举例&nbsp;&nbsp;&nbsp; <br />
mkdir 创建一个目录 mkdir dirname&nbsp;&nbsp;&nbsp; <br />
rmdir 删除一个目录 rmdir dirname&nbsp;&nbsp;&nbsp; <br />
mvdir 移动或重命名一个目录 mvdir dir1 dir2&nbsp;&nbsp;&nbsp; <br />
cd 改变当前目录 cd dirname&nbsp;&nbsp;&nbsp; <br />
pwd 显示当前目录的路径名 pwd&nbsp;&nbsp;&nbsp; <br />
ls 显示当前目录的内容 ls -la&nbsp;&nbsp;&nbsp; <br />
dircmp 比较两个目录的内容 dircmp dir1 dir2&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
&nbsp; <br />
文件操作&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
命令名 功能描述 使用举例&nbsp;&nbsp;&nbsp; <br />
cat 显示或连接文件 cat filename&nbsp;&nbsp;&nbsp; <br />
pg 分页格式化显示文件内容 pg filename&nbsp;&nbsp;&nbsp; <br />
more 分屏显示文件内容 more filename&nbsp;&nbsp;&nbsp; <br />
od 显示非文本文件的内容 od -c filename&nbsp;&nbsp;&nbsp; <br />
cp 复制文件或目录 cp file1 file2&nbsp;&nbsp;&nbsp; <br />
rm 删除文件或目录 rm filename&nbsp;&nbsp;&nbsp; <br />
mv 改变文件名或所在目录 mv file1 file2&nbsp;&nbsp;&nbsp; <br />
ln 联接文件 ln -s file1 file2&nbsp;&nbsp;&nbsp; <br />
find 使用匹配表达式查找文件 find . -name "*.c" -print&nbsp;&nbsp;&nbsp; <br />
file 显示文件类型 file filename&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
选择操作&nbsp;&nbsp;&nbsp; <br />
命令名 功能描述 使用举例&nbsp;&nbsp;&nbsp; <br />
head 显示文件的最初几行 head -20 filename&nbsp;&nbsp;&nbsp; <br />
tail 显示文件的最后几行 tail -15 filename&nbsp;&nbsp;&nbsp; <br />
cut 显示文件每行中的某些域 cut -f1,7 -d: /etc/passwd&nbsp;&nbsp;&nbsp; <br />
colrm 从标准输入中删除若干列 colrm 8 20 file2&nbsp;&nbsp;&nbsp; <br />
paste 横向连接文件 paste file1 file2&nbsp;&nbsp;&nbsp; <br />
diff 比较并显示两个文件的差异 diff file1 file2&nbsp;&nbsp;&nbsp; <br />
sed 非交互方式流编辑器 sed "s/red/green/g" filename&nbsp;&nbsp;&nbsp; <br />
grep 在文件中按模式查找 grep "^[a-zA-Z]" filename&nbsp;&nbsp;&nbsp; <br />
awk 在文件中查找并处理模式 awk '{print $1 $1}' filename&nbsp;&nbsp;&nbsp; <br />
sort 排序或归并文件 sort -d -f -u file1&nbsp;&nbsp;&nbsp; <br />
uniq 去掉文件中的重复行 uniq file1 file2&nbsp;&nbsp;&nbsp; <br />
comm 显示两有序文件的公共和非公共行 comm file1 file2&nbsp;&nbsp;&nbsp; <br />
wc 统计文件的字符数、词数和行数 wc filename&nbsp;&nbsp;&nbsp; <br />
nl 给文件加上行号 nl file1 &gt;file2&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
&nbsp; <br />
安全操作&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
命令名 功能描述 使用举例&nbsp;&nbsp;&nbsp; <br />
passwd 修改用户密码 passwd&nbsp;&nbsp;&nbsp; <br />
chmod 改变文件或目录的权限 chmod ug+x filename&nbsp;&nbsp;&nbsp; <br />
umask 定义创建文件的权限掩码 umask 027&nbsp;&nbsp;&nbsp; <br />
chown 改变文件或目录的属主 chown newowner filename&nbsp;&nbsp;&nbsp; <br />
chgrp 改变文件或目录的所属组 chgrp staff filename&nbsp;&nbsp;&nbsp; <br />
xlock 给终端上锁 xlock -remote&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
&nbsp; <br />
编程操作&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
命令名 功能描述 使用举例&nbsp;&nbsp;&nbsp; <br />
make 维护可执行程序的最新版本 make&nbsp;&nbsp;&nbsp; <br />
touch 更新文件的访问和修改时间 touch -m 05202400 filename&nbsp;&nbsp;&nbsp; <br />
dbx 命令行界面调试工具 dbx a.out&nbsp;&nbsp;&nbsp; <br />
xde 图形用户界面调试工具 xde a.out&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
&nbsp; <br />
进程操作&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
命令名 功能描述 使用举例&nbsp;&nbsp;&nbsp; <br />
ps 显示进程当前状态 ps u&nbsp;&nbsp;&nbsp; <br />
kill 终止进程 kill -9 30142&nbsp;&nbsp;&nbsp; <br />
nice 改变待执行命令的优先级 nice cc -c *.c&nbsp;&nbsp;&nbsp; <br />
renice 改变已运行进程的优先级 renice +20 32768&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
&nbsp; <br />
时间操作&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
命令名 功能描述 使用举例&nbsp;&nbsp;&nbsp; <br />
date 显示系统的当前日期和时间 date&nbsp;&nbsp;&nbsp; <br />
cal 显示日历 cal 8 1996&nbsp;&nbsp;&nbsp; <br />
time 统计程序的执行时间 time a.out&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
&nbsp; <br />
网络与通信操作&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
命令名 功能描述 使用举例&nbsp;&nbsp;&nbsp; <br />
telnet 远程登录 telnet hpc.sp.net.edu.cn&nbsp;&nbsp;&nbsp; <br />
rlogin 远程登录 rlogin hostname -l username&nbsp;&nbsp;&nbsp; <br />
rsh 在远程主机执行指定命令 rsh f01n03 date&nbsp;&nbsp;&nbsp; <br />
ftp 在本地主机与远程主机 之间传输文件 ftp ftp.sp.net.edu.cn&nbsp;&nbsp;&nbsp; <br />
rcp 在本地主机与远程主机 之间复制文件 rcp file1 host1:file2&nbsp;&nbsp;&nbsp; <br />
ping 给一个网络主机发送 回应请求 ping hpc.sp.net.edu.cn&nbsp;&nbsp;&nbsp; <br />
mail 阅读和发送电子邮件 mail&nbsp;&nbsp;&nbsp; <br />
write 给另一用户发送报文 write username pts/1&nbsp;&nbsp;&nbsp; <br />
mesg 允许或拒绝接收报文 mesg n&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
&nbsp; <br />
Korn Shell 命令&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
命令名 功能描述 使用举例&nbsp;&nbsp;&nbsp; <br />
history 列出最近执行过的 几条命令及编号 history&nbsp;&nbsp;&nbsp; <br />
r 重复执行最近执行过的 某条命令 r -2&nbsp;&nbsp;&nbsp; <br />
alias 给某个命令定义别名 alias del=rm -i&nbsp;&nbsp;&nbsp; <br />
unalias 取消对某个别名的定义 unalias del&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
&nbsp; <br />
其它命令&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
命令名 功能描述 使用举例&nbsp;&nbsp;&nbsp; <br />
uname 显示操作系统的有关信息 uname -a&nbsp;&nbsp;&nbsp; <br />
clear 清除屏幕或窗口内容 clear&nbsp;&nbsp;&nbsp; <br />
env 显示当前所有设置过的环境变量 env&nbsp;&nbsp;&nbsp; <br />
who 列出当前登录的所有用户 who&nbsp;&nbsp;&nbsp; <br />
whoami 显示当前正进行操作的用户名 whoami&nbsp;&nbsp;&nbsp; <br />
tty 显示终端或伪终端的名称 tty&nbsp;&nbsp;&nbsp; <br />
stty 显示或重置控制键定义 stty -a&nbsp;&nbsp;&nbsp; <br />
du 查询磁盘使用情况 du -k subdir&nbsp;&nbsp;&nbsp; <br />
df 显示文件系统的总空间和可用空间 df /tmp&nbsp;&nbsp; <br />
<img src ="http://www.blogjava.net/wuynng/aggbug/301516.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wuynng/" target="_blank">W.Y.H</a> 2009-11-07 09:15 <a href="http://www.blogjava.net/wuynng/articles/301516.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle Sql Loader中文字符导入乱码的解决方案</title><link>http://www.blogjava.net/wuynng/articles/301033.html</link><dc:creator>W.Y.H</dc:creator><author>W.Y.H</author><pubDate>Wed, 04 Nov 2009 05:11:00 GMT</pubDate><guid>http://www.blogjava.net/wuynng/articles/301033.html</guid><wfw:comment>http://www.blogjava.net/wuynng/comments/301033.html</wfw:comment><comments>http://www.blogjava.net/wuynng/articles/301033.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wuynng/comments/commentRss/301033.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wuynng/services/trackbacks/301033.html</trackback:ping><description><![CDATA[<p>服务器端字符集NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK</p>
<p>控制文件ctl:<br />
LOAD DATA<br />
<span style="color: red">CHARACTERSET ZHS16GBK</span><br />
INFILE 'c:\test.csv'<br />
APPEND&nbsp; INTO TABLE stk_al_version<br />
FIELDS TERMINATED BY ","<br />
(org_no,stk_c,version,name)</p>
<p>加入红色这段文字</p>
<p>导入成功</p>
<img src ="http://www.blogjava.net/wuynng/aggbug/301033.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wuynng/" target="_blank">W.Y.H</a> 2009-11-04 13:11 <a href="http://www.blogjava.net/wuynng/articles/301033.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>查看和修改Oracle服务器端的字符集</title><link>http://www.blogjava.net/wuynng/articles/301032.html</link><dc:creator>W.Y.H</dc:creator><author>W.Y.H</author><pubDate>Wed, 04 Nov 2009 05:09:00 GMT</pubDate><guid>http://www.blogjava.net/wuynng/articles/301032.html</guid><wfw:comment>http://www.blogjava.net/wuynng/comments/301032.html</wfw:comment><comments>http://www.blogjava.net/wuynng/articles/301032.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/wuynng/comments/commentRss/301032.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wuynng/services/trackbacks/301032.html</trackback:ping><description><![CDATA[<p>下面是查看和修改Oracle服务器端的字符集两方法：</p>
<p>方法一：</p>
<p>1)&nbsp; 查看服务器端字符集：</p>
<p>&nbsp;</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">*</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;v$nls_parameters;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">*</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;nls_database_parameters;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">select</span><span style="color: #000000">&nbsp;</span><span style="color: #808080">*</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">from</span><span style="color: #000000">&nbsp;sys.props$;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span></div>
<p>&nbsp;</p>
<p>2)&nbsp; 修改服务器端字符集(用sys用户)：</p>
<p>首先执行：<br />
</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #0000ff">update</span><span style="color: #000000">&nbsp;props$&nbsp;</span><span style="color: #0000ff">set</span><span style="color: #000000">&nbsp;value$&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="color: #ff0000">'</span><span style="color: #ff0000">WE8ISO8859P1</span><span style="color: #ff0000">'</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;name&nbsp;</span><span style="color: #808080">=</span><span style="color: #ff0000">'</span><span style="color: #ff0000">NLS_CHARACTERSET</span><span style="color: #ff0000">'</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">update</span><span style="color: #000000">&nbsp;props$&nbsp;</span><span style="color: #0000ff">set</span><span style="color: #000000">&nbsp;value$&nbsp;</span><span style="color: #808080">=</span><span style="color: #000000">&nbsp;</span><span style="color: #ff0000">'</span><span style="color: #ff0000">china</span><span style="color: #ff0000">'</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">where</span><span style="color: #000000">&nbsp;name&nbsp;</span><span style="color: #808080">=</span><span style="color: #ff0000">'</span><span style="color: #ff0000">NLS_LANGUAGE</span><span style="color: #ff0000">'</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span></div>
<p>&nbsp;</p>
<p>提交（commit），然后，重新启动数据库；</p>
<p>3）用客户端工具（PL/SQL DEVELOP or PB etc.）查询数据库，若显示乱码，先查询出数据库端的字符集，然后，从注册表中修改NLS_LANG字段的值，可能为AMERICAN_AMERICA.WE8ISO8859P1或者SIMPLIFIED CHINESE_CHINA.ZHS16GBK或者NA等。</p>
<p><br />
<br />
方法二：<br />
</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #0000ff">alter</span><span style="color: #000000">&nbsp;system&nbsp;enable&nbsp;restricted&nbsp;session;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">alter</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">database</span><span style="color: #000000">&nbsp;ORCL&nbsp;</span><span style="font-weight: bold; color: #000000">character</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">set</span><span style="color: #000000">&nbsp;ZHS16GBK;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">alter</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">database</span><span style="color: #000000">&nbsp;ORCL&nbsp;</span><span style="font-weight: bold; color: #000000">national</span><span style="color: #000000">&nbsp;</span><span style="font-weight: bold; color: #000000">character</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">set</span><span style="color: #000000">&nbsp;ZHS16GBK;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span></div>
<img src ="http://www.blogjava.net/wuynng/aggbug/301032.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wuynng/" target="_blank">W.Y.H</a> 2009-11-04 13:09 <a href="http://www.blogjava.net/wuynng/articles/301032.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SQLPLUS下执行多个文件中的SQL脚本</title><link>http://www.blogjava.net/wuynng/articles/265726.html</link><dc:creator>W.Y.H</dc:creator><author>W.Y.H</author><pubDate>Wed, 15 Apr 2009 04:51:00 GMT</pubDate><guid>http://www.blogjava.net/wuynng/articles/265726.html</guid><wfw:comment>http://www.blogjava.net/wuynng/comments/265726.html</wfw:comment><comments>http://www.blogjava.net/wuynng/articles/265726.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wuynng/comments/commentRss/265726.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wuynng/services/trackbacks/265726.html</trackback:ping><description><![CDATA[目前在做PL/SQL的开发，一个FEATURE需要建立多个TABLE、VIEW或PROCEDURE，因此需要有比较快捷的方式来部署这些数据库对象。 <br />
方法如下： <br />
--deploy.bat文件，完成数据库的登录,内容如下 <br />
<span class="hilite1">sqlplus</span> username/password@dbservice @"E:\xxx\deploy.sql" <br />
--deploy.sql中按顺序罗列出待执行的SQL语句的文件，内容如下 <br />
@"E:\xxx\1.VIEW_xxx.SQL" <br />
@"E:\xxx\2.PACKAGE_xxx.pck" <br />
<br />
注意事项如下： <br />
1. 需要注意的是最好用双引号给出文件待执行文件的路径，至少ORACLE 10G不支持路径名带空格。 <br />
2. 文件中的SQL脚本有空行的话会引起一些错误。 
<img src ="http://www.blogjava.net/wuynng/aggbug/265726.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wuynng/" target="_blank">W.Y.H</a> 2009-04-15 12:51 <a href="http://www.blogjava.net/wuynng/articles/265726.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>无法安装WID6.0.2的解决办法</title><link>http://www.blogjava.net/wuynng/articles/249551.html</link><dc:creator>W.Y.H</dc:creator><author>W.Y.H</author><pubDate>Fri, 02 Jan 2009 08:08:00 GMT</pubDate><guid>http://www.blogjava.net/wuynng/articles/249551.html</guid><wfw:comment>http://www.blogjava.net/wuynng/comments/249551.html</wfw:comment><comments>http://www.blogjava.net/wuynng/articles/249551.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wuynng/comments/commentRss/249551.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wuynng/services/trackbacks/249551.html</trackback:ping><description><![CDATA[由于之前安装WID时没有选择安装集成测试环境，今天想卸载WID然后重新安装。<br />
在控制面板中点击添加/删除程序，选择卸载WID，程序执行大约10几秒后弹出java.exe程序异常错误提示：<br />
错误签名----------------------------------------------------------<br />
appName:java.exe&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; modelName:fontmanager.dll<br />
...<br />
随后抛出sun.io.MalformedInputException异常...<br />
<br />
根据异常提示信息是在转换GB18030时出错的，下载并安装Microsoft的GB18030补丁，结果还是报相同的错误。<br />
花1个小时在Google搜索，终于找到解决办法。<br />
执行cmd，打开命令行窗口，进入WID的安装目录，找到卸载程序的位置：<br />
D:\IBM\WebSphere\ID\602\wid_prod\_uninst，执行uninstall.exe -console，以控制台方式执行卸载，O了！<br />
<br />
再次安装WID的时候报的错误与卸载时的错误相同，以相同的办法解决之。<br />
<img src ="http://www.blogjava.net/wuynng/aggbug/249551.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wuynng/" target="_blank">W.Y.H</a> 2009-01-02 16:08 <a href="http://www.blogjava.net/wuynng/articles/249551.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>