我有一个使用Oracle 11g进行持久化的J2EE Spring / Hibernate Web应用程序,偶尔会产生Oracle CPU高达100%的使用率,重新启动Tomcat将释放Oracle CPU。 我无法复制这个testing,甚至使用生产出口。 有无论如何有甲骨文显示我的SQL语句导致穗? 还是有另一种方法,我可以采取这将帮助我找出问题的地方? 其他信息:Webapp和Oracle在不同的盒子(两个窗口)。 通过SSL使用JDBC 谢谢。
我有一个PL / SQL脚本,我试图从命令shell与SQLPLUS运行。 然而,每当我去运行它,我所得到的是一个数字和一个等待一些input的光标。 当我input时,它只是增加数字,并重复该过程。 这是一个虚拟查询,做同样的事情 set serveroutput on DECLARE cursor getServerTime IS SELECT sysdate as t from dual; myTime getServerTime%ROWTYPE; BEGIN open getServerTime; FETCH getServerTime into myTime; dbms_output.put_line(myTime.t); close getServerTime; END; 从我使用的命令shell运行这个: sqlplus me/myPass@myDB @"dummy.sql"
我有一个oracle 9数据库。 有一个要求将其转移到Oracle 11。 什么是最好的方式来实现这一点。 在9上导出数据库并在11上再次导入数据库就足够了吗?还是有升级过程可以通过?
如果我在计算机的硬盘上备份了完整的文件系统,我可以使用恢复它并期望Oracle数据库一致吗? 备份软件使用VSS备份硬盘上的所有文件。
在Windows 7上安装Oracle 11g时,出现以下错误: Checking operating system requirements … Expected result: One of 5.0,5.1,5.2,6.0 Actual Result: 6.1 Check complete. The overall result of this check is: Failed <<<< Problem: Oracle Database 11g is not certified on the current operating system. Recommendation: Make sure you are installing the software on the correct platform. ======================================================== Checking service pack […]
我试图在运行Apache 2.2.15和Perl 5.10.1的Red Hat Enterprise Linux 6.2 Web服务器上configurationSELinux,并连接到远程Oracle数据库。 Oracle 11.2g客户端已安装。 访问Oracle的PHP脚本正在工作,但Perl脚本不能。 当SELinux执行时,我尝试通过我的Web浏览器访问Perl脚本,Apache的错误日志显示这个消息: Can't load '/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle: libclntsh.so.11.1: cannot open shared object file: No such file or directory at /usr/lib64/perl5/DynaLoader.pm line 200. 奇怪的是,审计日志不logging任何相应的消息。 但是,当我将SELinux设置为permissive模式时,Perl脚本完美地工作。 这是libclntsh.so.11.1上的ls -lZ的输出: -rwxr-xr-x. oracle oracle system_u:object_r:textrel_shlib_t:s0 /path/to/oracle/product/11.2.0/client/lib/libclntsh.so.11.1 有没有人有任何build议来解决这个问题? 我希望能够通过SELinux运行Web服务器。 更新:在selinux设置为dontaudit之后,我在audit.log中获得了更多的输出。 但是,我使用audit2allow创build的模块不能安装。 semodule -i的输出是: semodule: Failed on cgi_oracle! cgi_oracle.te包含: module cgi_oracle […]
我最近编写了一个复杂的SELECT语句(基于许多非常非常复杂的视图),在我的桌面上从Toad运行时需要1小时50分钟的执行时间,而使用cx_Oracle从Python脚本运行时只需要几分钟库(写入每50行刷新到磁盘)。 单个结果集的总大小约为8000行,共计5MB。 在执行期间,我的工作站没有抖动,而且CPU负载相当低。 在服务器上运行完全相同的查询花费了惊人的21秒来产生一个字节一个字节的相同的结果集。 这也是由相同的Python / cx_Oracle脚本生成的。 从服务器传输5MB结果集文件到我的工作站只需要3秒钟,所以我不认为networking带宽是直接的问题。 SQL * Net或其关联的库中的一个是罪魁祸首? 在networking中调用查询时是否存在一些非线性内存pipe理问题? 一个5MB的结果集很大,但在这个时代不是很大。 有没有可能会帮助一些缓冲区大小configuration设置? 我正在使用一个香草的Oracle客户端安装。 该工作站是使用Oracle 10g客户端的Windows XP Pro SP3(仅1GB内存),使用cx_Oracle 5.0.2的Toad for Oracle Xpert 9.7.2.5和Python 2.6.2。 服务器是Red Hat 2.6.9-67.ELsmp,运行在Oracle Xeon 3.8GHz 8GB服务器上,运行Oracle 10.2.0.4,Python 2.3.4,cx_Oracle 4.4.1。 编辑:哎呀! 该文件只有5兆字节 ,而不是GB。 很抱歉。 解决:在我提到的提取查询之前有一个人口脚本。 一旦该人口脚本重新运行,提取查询需要2小时运行,无论客户端程序的位置。 在第一次长时间之后,结果集必须被caching到某个地方,直到我有条不紊地完成了所有的组合。
我有一个应用程序托pipe在JBoss上。 使用oracle的jdbc驱动程序连接到一个oracle 10.2g数据库。 任何人都可以指导会议build立时会发生什么。 只是想了解JDBC / ODBC的内部工作。 任何帮助表示赞赏。
Oracle 10.2.0.4数据库与Win2K3上的逻辑备用数据库。 最近在生产实例上执行了一个相当大的删除操作。 我在使用逻辑备用数据库时遇到了困难,因为它有几百(58M大小)的归档日志进入操作,申请过程失败,出现内存不足的错误。 不幸的是,每次失败都必须从交易开始时重新开始应用。 这是每次需要几天。 无论如何,在试图解决这个问题时,我注意到生产系统中的每个归档日志在备用服务器上生成5或6个日志切换。 我不明白为什么这应该是。 有人有主意吗? 一个相关的问题,我还没有find答案:没有人知道逻辑备用数据库是否必须在archivelog模式下运行? 我真的不需要保留日志。
我不能再login到Oracle企业pipe理器11g。 我得到这个错误消息: ORA-28001: the password has expired (DBD ERROR: OCISessionBegin) 我可以使用SQL Pluslogin到服务器。 我警告说密码将在7天内过期(这与已经过期的不一样)。 遵循几个文档的build议,我从SQL Plus 运行这些命令 : ALTER USER sys IDENTIFIED BY new_password; ALTER USER system IDENTIFIED BY new_password; SQL * Plus不再警告密码,但我仍然无法使用企业pipe理器。 然后我按照这个去掉密码到期: ALTER PROFILE default LIMIT password_life_time UNLIMITED 而且我也重新启动了Oracle服务。 如果它使用caching的凭据,我试图从几台计算机上的几个浏览器连接。 没办法:我仍然在企业pipe理器中获得ORA-28001。 我错过了什么? 更新:一些更多的信息 SQL> select username,ACCOUNT_STATUS,EXPIRY_DATE from dba_users; USERNAME ACCOUNT_STATUS EXPIRY_D —————————— ——————————– ——– […]