对于想了解oracle存储过程深入学习与应用的读者,本文将是一篇不可错过的文章,我们将详细介绍oracle存储过程入门,并且为您提供关于Fororacledatabases,ifthetopshowi
对于想了解oracle 存储过程深入学习与应用的读者,本文将是一篇不可错过的文章,我们将详细介绍oracle存储过程入门,并且为您提供关于For oracle databases, if the top showing the oracle database, then oracle process is using the top c、How I Simplified Oracle Database 12c and 11g Installations on Oracle Linux 6、NodeJS-Oracle DB - NJS-040 连接超时,在 ICP 中使用带有 Lopback 的 oracle 驱动程序(loopback-connector-oracle)、Oracle 10g AND Oracle 11g手工建库案例--Oracle 11g的有价值信息。
本文目录一览:- oracle 存储过程深入学习与应用(oracle存储过程入门)
- For oracle databases, if the top showing the oracle database, then oracle process is using the top c
- How I Simplified Oracle Database 12c and 11g Installations on Oracle Linux 6
- NodeJS-Oracle DB - NJS-040 连接超时,在 ICP 中使用带有 Lopback 的 oracle 驱动程序(loopback-connector-oracle)
- Oracle 10g AND Oracle 11g手工建库案例--Oracle 11g
oracle 存储过程深入学习与应用(oracle存储过程入门)
对于存储过程已经有过一周的学习时间了,但是之学到一些皮毛,争取根据基础,熟练后能进行深入。
--1、存储过程创建存储过程的语法:
CREATE [
OR
REPLACE ]
PROCEDURE procedure_name [
(
parameter_list
) ] {IS | AS} [ local_declarations ]
BEGIN
executable_statements [
EXCEPTION
exception_handlers ]
END [ procedure_name ];
--其中:procedure_name是过程的名称。 parameter_list是参数列表。 local_declarations是局部声明。 executable_statements是可执行语句。 exception_handlers是异常处理程序。
--示例1: 演示创建过程(参数列表中为IN参数赋予一个默认值,不能为OUT、IN OUT参数赋予默认值)
create or replace procedure find_emp
(
emp_no in number := 7900
)
as
empname varchar2(20);
begin
select
ename
into
empname
from
emp
where
empno = emp_no
;
dbms_output.put_line(''雇员姓名是 ''
|| empname);
exception
when no_data_found then
dbms_output.put_line(''雇员编号未找到'');
end find_emp;
--调用过程:EXECUTE procudure_name(parameters_list);
--也可以在过程里面调用,直接写上procudure_name而不必写EXECUTE。
--示例2:演示创建带OUT参数的过程
create or replace procedure test
(
value1 varchar2
, value2 out number
)
is
identity number;
begin
select
sal
into
identity
from
emp
where
empno = value1
;
if identity < 2000 then
value2 := 1000;
else
value2 := 500;
end if;
end;
--调用带OUT参数的过程:
declare
value2 number;
begin
test(''7900'', value2);
dbms_output.put_line(value2);
end;
--示例3:演示创建带IN OUT参数的过程
create or replace procedure swap
(
p1 in out number
, p2 in out number
)
is
v_temp number;
begin
v_temp := p1;
p1 := p2;
p2 := v_temp;
end;
--调用带IN OUT参数的过程:
declare
num1 number := 100;
num2 number := 200;
begin
swap(num1, num2);
dbms_output.put_line(''num1= ''
|| num1);
dbms_output.p ut_line(''num2= ''
|| num2);
end;
--示例4:将过程的执行权限授予其他用户
GRANT EXECUTE ON find_emp TO scott;
GRANT EXECUTE ON swap TO PUBLIC;
--将find_emp过程的执行权限授予给用户scott,将执行swap过程的权限授予所有数据库用户。
--删除过程语法:
DROP PROCEDURE procudure_name;
For oracle databases, if the top showing the oracle database, then oracle process is using the top c
Note 805586.1 Troubleshooting Session Administration (Doc ID 805586.1) Note 822527.1 How To Find Where The Memory Is Growing For A Process (Doc ID 822527.1) Note 273646.1 How to diagnose the high cpu utilization of ORACLE.EXE in Windows environment Note 728539.1 Find Blocking Sessions In sqlPLUS Note 61552.1 Troubleshooting Oracle Database Hanging Issues for versions from 7 to 9--Exhaustive Note 164760.1 Detecting and Resolving Locking Conflicts using TopSessionsHow I Simplified Oracle Database 12c and 11g Installations on Oracle Linux 6
How I Simplified Oracle Database 12c and 11g Installations on Oracle Linux 6
by Ginny Henningsen; updated by Michele Casey
How to simplify the installation of Oracle Database 12c or 11g on Oracle Linux 6 by installing the oracle-rdbms-server-12cR1-preinstall
or oracle-rdbms-server-11gR2-preinstall
RPM package, which automatically performs a number of tasks, such as installing required software packages, resolving package dependencies, and modifying kernel parameters.
Published September 2012 (updated September 2017)
READ THIS FIRST: Important Changes Since Publication
While the content in this article is still valid, several details have changed. For example:
- For Oracle Database 12c Release 2, the preinstall RPM has a different name than the one used in the article belowpu:
- oracle-database-server-12cR2-preinstall
- See also this documentation: Automatically Configuring Oracle Linux with Oracle Preinstallation RPM
- The preinstall RPMs are published on Oracle Linux yum server for both Oracle Linux 6 and 7 in the Latest repositories which are configured and enabled by default in recent releases of Oracle Linux 6 and 7
Introducing the oracle-rdbms-server-12cR1-preinstall
and oracle-rdbms-server-11gR2-preinstall
RPM for Oracle Linux
Before installing Oracle Database 12c or 11g on a system, you need to preconfigure the operating environment since the database requires certain software packages, package versions, and tweaks to kernel parameters. (Be sure to review the appropriate Oracle Database installation guide to familiarize yourself with hardware, software, and operating system requirements.)
|
Note: This article applies to Oracle Linux 6. A previous article, "How I Simplified Oracle Database Installation on Oracle Linux," covered performing a similar task on versions of Oracle Linux 5.
On Oracle Linux, I discovered that there is a remarkably easy way to address these installation prerequisites: First, depending on your database version, install either the RPM package called oracle-rdbms-server-12cR1-preinstall
or oracle-rdbms-server-11gR2-preinstall
. This RPM performs a number of preconfiguration steps, including the following:
- Automatically downloading and installing any additional software packages and specific package versions needed for installing Oracle Grid Infrastructure and Oracle Database 12 c Release 1 (12.1) or 11g Release 2 (11.2.0.3), with package dependencies resolved via
yum
orup2date
capabilities. - Creating the user
oracle
and the groupsoinstall
(forOraInventory
) anddba
(forOSDBA
), which are used during database installation. (For security purposes, this user has no password by default and cannot log in remotely. To enable remote login, please set a password using thepasswd
tool.) - Modifying kernel parameters in
/etc/sysctl.conf
to change settings for shared memory, semaphores, the maximum number of file descriptors, and so on. - Setting hard and soft shell resource limits in
/etc/security/limits.conf
, such as the locked-in memory address space, the number of open files, the number of processes, and core file size. - Setting
numa=off
in the kernel for x86_64 machines.
Note that oracle-rdbms-server-12cR1-preinstall
and oracle-rdbms-server-11gR2-preinstall
parses the existing /etc/sysctl.conf
and /etc/security/limits.conf
files and updates values only as needed for database installation. Any precustomized settings not related to database installation are left as is.
The oracle-rdbms-server-12cR1-preinstall
and oracle-rdbms-server-11gR2-preinstall
RPM packages are accessible through the Oracle Unbreakable Linux Network (ULN, which requires a support contract), from the Oracle Linux distribution media, or from the Oracle public yum repository. Thus, whether or not your system is registered with ULN to access Oracle patches and support, you can use oracle-rdbms-server-12cR1-preinstall
and oracle-rdbms-server-11gR2-preinstall
to simplify database installation on Oracle Linux. In addition, the Oracle public yum repository now includes all security and bug errata, ensuring systems are secured and stable with the latest security updates and bug fixes.
Installing the oracle-rdbms-server-12cR1-preinstall
or oracle-rdbms-server-11gR2-preinstall
RPM
The remainder of this article steps through the procedure that I used for installing oracle-rdbms-server-11gR2-preinstall
on Oracle Linux via the Oracle public yum repository. The same steps outlined in the following section can be used for either version of the preinstall RPM package. I started with a system running Oracle Linux Release 6 Update 4 for x86_64, a 64-bit version of Oracle Linux that I downloaded from the Oracle software delivery cloud (requires registration or login). First, I set up a yum
configuration file that pointed to the correct repository, and then I installed the oracle-rdbms-server-11gR2-preinstall
RPM from that repository.
Here are the steps for preconfiguring a system for Oracle Database installation using oracle-rdbms-server-11gR2-preinstall
. Remember, the steps are the same when using the oracle-rdbms-server-12cR1-preinstall
package; you simply need to change the name of the RPM package during the yum installation step.
- As an authorized user (for example,
root
), retrieve the file that configures repository locations:
# cd /etc/yum.repos.d # wget http://yum.oracle.com/public-yum-ol6.repo
- Using a text editor, modify the file, changing the field
enabled=0
toenabled=1
to reflect repositories that correspond to the machine''s operating system release.
Here is an excerpt of
public-yum-old6.repo
with the changed lines in boldface.[ol6_latest] name=Oracle Linux $releasever Latest ($basearch) baseurl=http://yum.oracle.com/repo/OracleLinux/OL6/latest/$basearch/ gpgkey=http://yum.oracle.com/RPM-GPG-KEY-oracle-ol6 gpgcheck=1 enabled=1 [ol6_UEK_latest] name=Latest Unbreakable Enterprise Kernel for Oracle Linux $releasever ($basearch) baseurl=http://yum.oracle.com/repo/OracleLinux/OL6/UEK/latest/$basearch/ gpgkey=http://yum.oracle.com/RPM-GPG-KEY-oracle-ol6 gpgcheck=1 enabled=1
Because the target system is running Oracle Linux Release 6 Update 4 for x86_64, which installs the Oracle Unbreakable Enterprise Kernel by default, there are two repositories to enable,
[ol6_latest]
and[ol6_UEK_latest]
. - Next, install the
oracle-rdbms-server-11gR2-preinstall
RPM using theyum install
command. If you are using Oracle Database 12c, then you would typeyum install
.
The output in Listing 1 shows how the installation checks dependencies and then downloads and installs the required packages.
# yum install oracle-rdbms-server-11gR2-preinstall Loaded plugins: refresh-packagekit, rhnplugin, security Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package oracle-rdbms-server-11gR2-preinstall.x86_64 0:1.0-6.el6 will be installed --> Processing Dependency: gcc-c++ for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64 --> Processing Dependency: gcc for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64 --> Processing Dependency: libaio-devel for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64 --> Processing Dependency: libstdc++-devel for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64 --> Processing Dependency: glibc-devel for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64 --> Processing Dependency: compat-libstdc++-33 for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64 --> Processing Dependency: ksh for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64 --> Processing Dependency: compat-libcap1 for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64 --> Running transaction check ---> Package compat-libcap1.x86_64 0:1.10-1 will be installed ---> Package compat-libstdc++-33.x86_64 0:3.2.3-69.el6 will be installed ---> Package gcc.x86_64 0:4.4.6-4.el6 will be installed --> Processing Dependency: cpp = 4.4.6-4.el6 for package: gcc-4.4.6-4.el6.x86_64 --> Processing Dependency: cloog-ppl >= 0.15 for package: gcc-4.4.6-4.el6.x86_64 ---> Package gcc-c++.x86_64 0:4.4.6-4.el6 will be installed --> Processing Dependency: libmpfr.so.1()(64bit) for package: gcc-c++-4.4.6-4.el6.x86_64 ---> Package glibc-devel.x86_64 0:2.12-1.80.el6_3.4 will be installed --> Processing Dependency: glibc-headers = 2.12-1.80.el6_3.4 for package: glibc-devel-2.12-1.80.el6_3.4.x86_64 --> Processing Dependency: glibc-headers for package: glibc-devel-2.12-1.80.el6_3.4.x86_64 ---> Package ksh.x86_64 0:20100621-16.el6 will be installed ---> Package libaio-devel.x86_64 0:0.3.107-10.el6 will be installed ---> Package libstdc++-devel.x86_64 0:4.4.6-4.el6 will be installed --> Running transaction check ---> Package cloog-ppl.x86_64 0:0.15.7-1.2.el6 will be installed --> Processing Dependency: libppl_c.so.2()(64bit) for package: cloog-ppl-0.15.7-1.2.el6.x86_64 --> Processing Dependency: libppl.so.7()(64bit) for package: cloog-ppl-0.15.7-1.2.el6.x86_64 ---> Package cpp.x86_64 0:4.4.6-4.el6 will be installed ---> Package glibc-headers.x86_64 0:2.12-1.80.el6_3.4 will be installed --> Processing Dependency: kernel-headers >= 2.2.1 for package: glibc-headers-2.12-1.80.el6_3.4.x86_64 --> Processing Dependency: kernel-headers for package: glibc-headers-2.12-1.80.el6_3.4.x86_64 ---> Package mpfr.x86_64 0:2.4.1-6.el6 will be installed --> Running transaction check ---> Package kernel-uek-headers.x86_64 0:2.6.32-300.32.1.el6uek will be installed ---> Package ppl.x86_64 0:0.10.2-11.el6 will be installed --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: oracle-rdbms-server-11gR2-preinstall x86_64 1.0-6.el6 ol6_latest 15 k Installing for dependencies: cloog-ppl x86_64 0.15.7-1.2.el6 ol6_latest 93 k compat-libcap1 x86_64 1.10-1 ol6_latest 17 k compat-libstdc++-33 x86_64 3.2.3-69.el6 ol6_latest 183 k cpp x86_64 4.4.6-4.el6 ol6_latest 3.7 M gcc x86_64 4.4.6-4.el6 ol6_latest 10 M gcc-c++ x86_64 4.4.6-4.el6 ol6_latest 4.7 M glibc-devel x86_64 2.12-1.80.el6_3.4 ol6_latest 970 k glibc-headers x86_64 2.12-1.80.el6_3.4 ol6_latest 600 k kernel-uek-headers x86_64 2.6.32-300.32.1.el6uek ol6_latest 713 k ksh x86_64 20100621-16.el6 ol6_latest 684 k libaio-devel x86_64 0.3.107-10.el6 ol6_latest 13 k libstdc++-devel x86_64 4.4.6-4.el6 ol6_latest 1.5 M mpfr x86_64 2.4.1-6.el6 ol6_latest 156 k ppl x86_64 0.10.2-11.el6 ol6_latest 1.3 M Transaction Summary ================================================================================ Install 15 Package(s) Total download size: 25 M Installed size: 61 M Is this ok [y/N]: Downloading Packages: -------------------------------------------------------------------------------- Total 710 kB/s | 25 MB 00:35 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Installing : mpfr-2.4.1-6.el6.x86_64 1/15 Installing : libstdc++-devel-4.4.6-4.el6.x86_64 2/15 Installing : cpp-4.4.6-4.el6.x86_64 3/15 Installing : ppl-0.10.2-11.el6.x86_64 4/15 Installing : cloog-ppl-0.15.7-1.2.el6.x86_64 5/15 Installing : kernel-uek-headers-2.6.32-300.32.1.el6uek.x86_64 6/15 Installing : glibc-headers-2.12-1.80.el6_3.4.x86_64 7/15 Installing : glibc-devel-2.12-1.80.el6_3.4.x86_64 8/15 Installing : gcc-4.4.6-4.el6.x86_64 9/15 Installing : gcc-c++-4.4.6-4.el6.x86_64 10/15 Installing : compat-libstdc++-33-3.2.3-69.el6.x86_64 11/15 Installing : libaio-devel-0.3.107-10.el6.x86_64 12/15 Installing : ksh-20100621-16.el6.x86_64 13/15 Installing : compat-libcap1-1.10-1.x86_64 14/15 Installing : oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64 15/15 Verifying : gcc-4.4.6-4.el6.x86_64 1/15 Verifying : compat-libcap1-1.10-1.x86_64 2/15 Verifying : ksh-20100621-16.el6.x86_64 3/15 Verifying : glibc-devel-2.12-1.80.el6_3.4.x86_64 4/15 Verifying : libaio-devel-0.3.107-10.el6.x86_64 5/15 Verifying : oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64 6/15 Verifying : gcc-c++-4.4.6-4.el6.x86_64 7/15 Verifying : glibc-headers-2.12-1.80.el6_3.4.x86_64 8/15 Verifying : libstdc++-devel-4.4.6-4.el6.x86_64 9/15 Verifying : compat-libstdc++-33-3.2.3-69.el6.x86_64 10/15 Verifying : mpfr-2.4.1-6.el6.x86_64 11/15 Verifying : kernel-uek-headers-2.6.32-300.32.1.el6uek.x86_64 12/15 Verifying : cpp-4.4.6-4.el6.x86_64 13/15 Verifying : ppl-0.10.2-11.el6.x86_64 14/15 Verifying : cloog-ppl-0.15.7-1.2.el6.x86_64 15/15 Installed: oracle-rdbms-server-11gR2-preinstall.x86_64 0:1.0-6.el6 Dependency Installed: cloog-ppl.x86_64 0:0.15.7-1.2.el6 compat-libcap1.x86_64 0:1.10-1 compat-libstdc++-33.x86_64 0:3.2.3-69.el6 cpp.x86_64 0:4.4.6-4.el6 gcc.x86_64 0:4.4.6-4.el6 gcc-c++.x86_64 0:4.4.6-4.el6 glibc-devel.x86_64 0:2.12-1.80.el6_3.4 glibc-headers.x86_64 0:2.12-1.80.el6_3.4 kernel-uek-headers.x86_64 0:2.6.32-300.32.1.el6uek ksh.x86_64 0:20100621-16.el6 libaio-devel.x86_64 0:0.3.107-10.el6 libstdc++-devel.x86_64 0:4.4.6-4.el6 mpfr.x86_64 0:2.4.1-6.el6 ppl.x86_64 0:0.10.2-11.el6 Complete!
Listing 1: Installing the
oracle-rdbms-server-11gR2-preinstall
RPMThe yum installation logs messages about kernel changes in the file
/var/log/oracle-rdbms-server-11gR2-preinstall/results/orakernel.log
, and it makes backups of current system settings in the directory/var/log/oracle-rdbms-server-11gR2-preinstall/backup
. - At this point, the system is ready for the installation of Oracle Database. For example, to install Oracle Database 11g Release 2, follow the directions in Chapter 4, "Installing Oracle Database," of the Database Installation Guide for Linux."
Here are the steps I followed while installing Oracle Database 11g Release 2 in my test environment. Make sure you review all documentation and follow recommended best practices before installing into your production environment.
- As
root
, create a parent directory in a file system that has sufficient space to be the target location for the downloaded files:
# mkdir /home/OraDB11g # cd /home/OraDB11g
The amount of disk space needed in the file system varies according to the specific installation type, but roughly twice the size of the zip archives, or 5 GB, is enough to house the software and data files.
- Into this target directory, download the installation media files from the Oracle Database Software Downloads page on Oracle Technology Network.
- Extract the files:
# unzip linux.x64_11gR2_database_1of2.zip # unzip linux.x64_11gR2_database_2of2.zip
- Log in as the user
oracle
. Change directory to thedatabase
directory and enter the following command to run the Oracle Universal Installer:
$ cd /home/OraDB11g/database $ ./runInstaller
The Oracle Universal Installer performs a number of checks, verifying that the necessary OS packages and versions are installed. In addition, it checks kernel parameters set by the
oracle-rdbms-server-11gR2-preinstall
installation. During the kernel settings check, the installer might flag a few settings as "failed," and you should investigate these failures. In some cases, you still might be able to continue with the database installation. If you check kernel settings in/etc/sysctl.conf
, you''ll see thatoracle-rdbms-server-11gR2-preinstall
has modified and added the necessary settings to ensure the minimum requirements are met, as defined in section 2.10.1, "Displaying and Changing Kernel Parameter Values," in Chapter 2, "Oracle Database Preinstallation Requirements," of the Oracle Database Installation Guide 11g Release2 (11.2) for Linux. Below is the list of requirements:fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 4294967295 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576
If necessary, you can (as
root
) edit the file/etc/sysctl.conf
to specify a setting manually, for example:# vi /etc/sysctl.conf # /sbin/sysctl -p
The Oracle Universal Installer performs additional checks, such as verifying the
glibc
version, sufficient disk space, environmental variable and path settings, and sufficient physical memory and swap space. Generally, installingoracle-rdbms-server-11gR2-preinstall
takes care of the prerequisites so that you can proceed directly with installing the database. - As
Final Thoughts
Installing the oracle-rdbms-server-12cR1-preinstall
and oracle-rdbms-server-11gR2-preinstall
RPMs can save time when installing Oracle Database 12c and 11g on Oracle Linux. These RPMs address most Oracle Database installation prerequisites and greatly simplify the installation process.
See Also
Here are the resources referenced earlier in this document:
- Oracle Unbreakable Linux Network: https://linux.oracle.com
- Oracle Linux yum server: http://yum.oracle.com/
- Oracle software delivery cloud (requires registration or login): https://edelivery.oracle.com/linux
- Chapter 4, "Installing Oracle Database," of the Database Installation Guide for Linux: http://docs.oracle.com/cd/E11882_01/install.112/e24321/inst_task.htm#BABBBHJH
- Oracle Database Software Downloads page on Oracle Technology Network: http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html
And here are some additional resources from the Oracle Database Documentation Library (http://www.oracle.com/pls/db112/homepage). Relevant subsections from the Oracle Database Installation Guide 11g Release 2 (11.2) for Linux (http://download.oracle.com/docs/cd/E11882_01/install.112/e16763/toc.htm) with currently valid URLs are as follows:
- "About the Oracle RDBMS Pre-Install and Oracle Validated RPMs" from Chapter 1, "Overview of Oracle Database Installation": http://download.oracle.com/docs/cd/E11882_01/install.112/e16763/install_overview.htm#BABDBHCJ
- Chapter 2, "Oracle Database Preinstallation Requirements": http://download.oracle.com/docs/cd/E11882_01/install.112/e16763/pre_install.htm#BABFDGHJ
- "Downloading Oracle Software" from Chapter 4, "Installing Oracle Database," which describes how to download installation files from the Oracle Technology Network Website: http://docs.oracle.com/cd/E11882_01/install.112/e16763/inst_task.htm#autoId6
Also see the blog entry "Oracle RDBMS Server 11gR2 Pre-Install RPM for Oracle Linux 6 has been released": https://blogs.oracle.com/linux/entry/oracle_rdbms_server_11gr2_pre
About the Authors
Ginny Henningsen has worked for the last 15 years as a freelance writer developing technical collateral and documentation for high-tech companies. Prior to that, Ginny worked for Sun Microsystems, Inc. as a Systems Engineer in King of Prussia, PA and Milwaukee, WI. Ginny has a BA from Carnegie-Mellon University and a MSCS from Villanova University.
Michele Casey is the Director of Product Management for Oracle Linux. She has worked with commercial Linux distributions and open source projects as a product manager since 2006. She has also held positions as a system administrator, project manager, and technical support engineer.
Revision 1.1, 07/09/2013; added information about using theoracle-rdbms-server-12cR1-preinstall package to installOracle Database 12c |
Follow us:
NodeJS-Oracle DB - NJS-040 连接超时,在 ICP 中使用带有 Lopback 的 oracle 驱动程序(loopback-connector-oracle)
如何解决NodeJS-Oracle DB - NJS-040 连接超时,在 ICP 中使用带有 Lopback 的 oracle 驱动程序(loopback-connector-oracle)?
我正在使用 loopback-connector-oracle 4.1.1 版寻求有关我面临的问题的一些信息。分析如下: 我们有 DB 连接配置,可以使用 json 文件格式的 oracle 连接器使用属性连接到 oracle DB 数据源。 "maxConn": 20,“主机”:DB_HOST, “端口”:DB_PORT, “数据库”:DB_NAME, “密码”:DB_PASSWORD, “用户”:DB_USER, "connector": "oracle",
有两个进程/pod 正在运行,每个进程/pod 都有自己的池供oracle 连接器使用。发生的情况是,在一个实例中,oracle 能够连接并处理请求,但在第二个 pod/进程中,我注意到 njs-040 错误连接超时。由于两者都运行在同一个环境中,所以连接性不会成为问题。我正在寻求您的帮助或意见以了解连接池耗尽的原因?正如我所看到的,DB 上的连接/会话数量配置的数量较少。 当我重新启动 pod/进程时,一切都会恢复正常。在我的流程中遇到的一些问题,如果您可以指导并提供宝贵的意见,我正在寻求您的帮助。
- 如果使用连接池(oracle 连接器),它也应该释放对象,耗尽的机会会减少吗?
- 在进程/pod 启动并通过连接器 (oracle) 获取数据源中的连接对象后,发生网络问题并且进程和数据库之间的连接丢失,连接器是否恢复?根据我的观察,我在其他进程中注意到的似乎应该被恢复,当它与范围一起运行时,在一个进程中可能会导致什么?
我非常感谢您的回复。 提前致谢 桑吉夫
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
Oracle 10g AND Oracle 11g手工建库案例--Oracle 11g
Oracle 10g AND Oracle 11g手工建库案例--Oracle 11g
系统环境:
操作系统: RedHat EL6
Oracle: Oracle 10g and Oracle 11g
手工建库相对来说很容易实现,本案例是从10g和11g,通过手工建库的方式做一个简单的对比,可以看出11g和10g之间的一个简单的差异!
VMware+Linux+Oracle 10G RAC全程详细图解
案例二:
在Oracle 11g 环境下手工建库
DB_NAME=''test1''
INSTANCE_NAME=''test1''
1、建立Instance的初始化参数文件和口令文件
[oracle@rh6 dbs]$cat inittest1.ora
db_name=''test1''
memory_target=400m //Oracle 11g增加了内存自动管理
processes = 150
audit_file_dest=''$ORACLE_BASE/admin/test1/adump''
audit_trail =''db''
db_block_size=8192
db_domain=''''
open_cursors=300
remote_login_passwordfile=''EXCLUSIVE''
undo_tablespace=''UNDOTBS1''
# You may want to ensure that control files are created on separate physical
# devices
control_files = /u01/app/oracle/oradata/test1/control01.ctl
compatible =''11.2.0''
[oracle@rh6 dbs]$ orapwd file=orapwtest1 password=oracle entries=3
2、建立数据库相关的目录
Oracle 11g增加了diagnostic directory,,默认的为$ORACLE_BASE
[oracle@rh6 dbs]$ mkdir -p $ORACLE_BASE/admin/test1/adump
[oracle@rh6 dbs]$ mkdir -p /u01/app/oracle/oradata/test1
3、建立建库脚本
[oracle@rh6 ~]$ cat cr_db.sql
CREATE DATABASE test1
USER SYS IDENTIFIED BY oracle
USER SYSTEM IDENTIFIED BY oracle
LOGFILE
GROUP 1 (''/u01/app/oracle/oradata/test1/redo01a.log'') SIZE 50M ,
GROUP 2 (''/u01/app/oracle/oradata/test1/redo02a.log'') SIZE 50M
MAXLOGFILES 10
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 200
CHARACTER SET zhs16gbk
DATAFILE ''/u01/app/oracle/oradata/test1/system01.dbf'' SIZE 325M REUSE
SYSAUX DATAFILE ''/u01/app/oracle/oradata/test1/sysaux01.dbf'' SIZE 325M REUSE
DEFAULT TEMPORARY TABLESPACE tempts1
TEMPFILE ''/u01/app/oracle/oradata/test1/temp01.dbf''
SIZE 100M REUSE
UNDO TABLESPACE undotbs1
DATAFILE ''/u01/app/oracle/oradata/test1/undotbs01.dbf''
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
4、启动Instance并建立数据库
[oracle@rh6 ~]$ export ORACLE_SID=test1
[oracle@rh6 ~]$ sqlplus ''/as sysdba''
SQL*Plus: Release 11.2.0.1.0 Production on Wed May 21 10:59:58 2014
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to an idle instance.
10:59:59 SYS@ test1>startup nomount;
ORACLE instance started.
Total System Global Area 417546240 bytes
Fixed Size 2213936 bytes
Variable Size 268437456 bytes
Database Buffers 142606336 bytes
Redo Buffers 4288512 bytes
11:00:12 SYS@ test1>@/home/oracle/cr_db
Database created.
Elapsed: 00:01:23.44
11:01:51 SYS@ test1>
建库告警日志:
CREATE TABLESPACE sysaux DATAFILE ''/u01/app/oracle/oradata/test1/sysaux01.dbf'' SIZE 325M REUSE
EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ONLINE
Wed May 21 11:01:08 2014
Completed: CREATE TABLESPACE sysaux DATAFILE ''/u01/app/oracle/oradata/test1/sysaux01.dbf'' SIZE 325M REUSE
EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ONLINE
processing ?/rdbms/admin/dplsql.bsq
processing ?/rdbms/admin/dtxnspc.bsq
CREATE UNDO TABLESPACE UNDOTBS1 DATAFILE ''/u01/app/oracle/oradata/test1/undotbs01.dbf''
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
Wed May 21 11:01:23 2014
Successfully onlined Undo Tablespace 2.
Completed: CREATE UNDO TABLESPACE UNDOTBS1 DATAFILE ''/u01/app/oracle/oradata/test1/undotbs01.dbf''
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
CREATE TEMPORARY TABLESPACE TEMPTS1 TEMPFILE ''/u01/app/oracle/oradata/test1/temp01.dbf''
SIZE 100M REUSE
Completed: CREATE TEMPORARY TABLESPACE TEMPTS1 TEMPFILE ''/u01/app/oracle/oradata/test1/temp01.dbf''
SIZE 100M REUSE
ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMPTS1
Completed: ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMPTS1
ALTER DATABASE DEFAULT TABLESPACE SYSTEM
Completed: ALTER DATABASE DEFAULT TABLESPACE SYSTEM
processing ?/rdbms/admin/dfmap.bsq
processing ?/rdbms/admin/denv.bsq
processing ?/rdbms/admin/drac.bsq
processing ?/rdbms/admin/dsec.bsq
processing ?/rdbms/admin/doptim.bsq
processing ?/rdbms/admin/dobj.bsq
processing ?/rdbms/admin/djava.bsq
processing ?/rdbms/admin/dpart.bsq
Wed May 21 11:01:34 2014
processing ?/rdbms/admin/drep.bsq
processing ?/rdbms/admin/daw.bsq
processing ?/rdbms/admin/dsummgt.bsq
processing ?/rdbms/admin/dtools.bsq
processing ?/rdbms/admin/dexttab.bsq
processing ?/rdbms/admin/ddm.bsq
processing ?/rdbms/admin/dlmnr.bsq
processing ?/rdbms/admin/ddst.bsq
Wed May 21 11:01:43 2014
SMON: enabling tx recovery
Starting background process SMCO
Wed May 21 11:01:44 2014
SMCO started with pid=17, OS id=2816
Wed May 21 11:01:50 2014
replication_dependency_tracking turned off (no async multimaster replication found)
Starting background process QMNC
Wed May 21 11:01:50 2014
QMNC started with pid=20, OS id=2826
Completed: CREATE DATABASE test1
USER SYS IDENTIFIED BY ****USER SYSTEM IDENTIFIED BY ****LOGFILE
GROUP 1 (''/u01/app/oracle/oradata/test1/redo01a.log'') SIZE 50M ,
GROUP 2 (''/u01/app/oracle/oradata/test1/redo02a.log'') SIZE 50M
MAXLOGFILES 10
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 200
CHARACTER SET zhs16gbk
DATAFILE ''/u01/app/oracle/oradata/test1/system01.dbf'' SIZE 325M REUSE
SYSAUX DATAFILE ''/u01/app/oracle/oradata/test1/sysaux01.dbf'' SIZE 325M REUSE
DEFAULT TEMPORARY TABLESPACE tempts1
TEMPFILE ''/u01/app/oracle/oradata/test1/temp01.dbf''
SIZE 100M REUSE
UNDO TABLESPACE undotbs1
DATAFILE ''/u01/app/oracle/oradata/test1/undotbs01.dbf''
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
更多详情见请继续阅读下一页的精彩内容:
10gRAC-10.2.0.4-dbca建库时配置OEM遇到BUG-p8350262
Oracle 11g R2 手动建库(create database manually)
Oracle 11g + ASM DBCA 建库问题解决心得
Linux下Oracle 10g手工建库全过程
Oracle 9i数据库手工建库过程简记
静默安装Oracle 11gR2软件并且手动建库
今天的关于oracle 存储过程深入学习与应用和oracle存储过程入门的分享已经结束,谢谢您的关注,如果想了解更多关于For oracle databases, if the top showing the oracle database, then oracle process is using the top c、How I Simplified Oracle Database 12c and 11g Installations on Oracle Linux 6、NodeJS-Oracle DB - NJS-040 连接超时,在 ICP 中使用带有 Lopback 的 oracle 驱动程序(loopback-connector-oracle)、Oracle 10g AND Oracle 11g手工建库案例--Oracle 11g的相关知识,请在本站进行查询。
本文标签: