programing

Oracle Database Express Edition 11g 설치 문제

powerit 2023. 10. 25. 23:51
반응형

Oracle Database Express Edition 11g 설치 문제

가이드를 사용하여 (X)ubuntu 13.04 64비트에 Oracle Database를 설치하려고 합니다.다음 단계에 도달할 때까지 모든 것이 잘 진행되었습니다.

$ sudo /etc/init.d/oracle-xe configure

Oracle Database 11g Express Edition Configuration
-------------------------------------------------
This will configure on-boot properties of Oracle Database 11g Express 
Edition.  The following questions will determine whether the database should 
be starting upon system boot, the ports it will use, and the passwords that 
will be used for database accounts.  Press <Enter> to accept the defaults. 
Ctrl-C will abort.

Specify the HTTP port that will be used for Oracle Application Express [8080]:

Specify a port that will be used for the database listener [1521]:

Specify a password to be used for database accounts.  Note that the same
password will be used for SYS and SYSTEM.  Oracle recommends the use of 
different passwords for each database account.  This can be done after 
initial configuration:
Confirm the password:

Do you want Oracle Database 11g Express Edition to be started on boot (y/n) [y]:

Starting Oracle Net Listener...Done
Configuring database...
Database Configuration failed.  Look into /u01/app/oracle/product/11.2.0/xe/config/log for details

로그 파일에는 다음과 같은 출력이 표시됩니다.

:/u01/app/oracle/product/11.2.0/xe/config/log$ for l in *.log
> do
> echo $l
> cat $l
> done
cloneDBCreation.log
Create controlfile reuse set database "XE"
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


BEGIN dbms_backup_restore.zerodbid(0); END;

*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory
ORA-00845: MEMORY_TARGET not supported on this system
Create controlfile reuse set database "XE"
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


alter system enable restricted session
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


alter database "XE" open resetlogs
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


alter database rename global_name to "XE"
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


alter system switch logfile
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


alter system checkpoint
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


alter database drop logfile group 3
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


ALTER TABLESPACE TEMP ADD TEMPFILE '/u01/app/oracle/oradata/XE/temp.dbf' SIZE 20480K REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


select tablespace_name from dba_tablespaces where tablespace_name='USERS'
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


select sid, program, serial#, username from v$session
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


alter user sys identified by "oracle"
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


alter user system identified by "oracle"
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


alter system disable restricted session
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


CloneRmanRestore.log
ORA-00845: MEMORY_TARGET not supported on this system
select TO_CHAR(systimestamp,'YYYYMMDD HH:MI:SS') from dual
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


declare
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


select TO_CHAR(systimestamp,'YYYYMMDD HH:MI:SS') from dual
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


postDBCreation.log
begin
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 



File created.

ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory
ORA-00845: MEMORY_TARGET not supported on this system
select 'utl_recomp_begin: ' || to_char(sysdate, 'HH:MI:SS') from dual
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


BEGIN utl_recomp.recomp_serial(); END;

*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


select 'utl_recomp_end: ' || to_char(sysdate, 'HH:MI:SS') from dual
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


postScripts.log
CREATE OR REPLACE LIBRARY dbms_sumadv_lib AS '/u01/app/oracle/product/11.2.0/xe/lib/libqsmashr.so';
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


BEGIN dbms_datapump_utl.replace_default_dir; END;

*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


commit
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


create or replace directory XMLDIR as '/u01/app/oracle/product/11.2.0/xe/rdbms/xml'
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


DROP DIRECTORY ORACLE_OCM_CONFIG_DIR
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


DROP DIRECTORY ADMIN_DIR
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


DROP DIRECTORY WORK_DIR
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


BEGIN dbms_swrf_internal.cleanup_database(cleanup_local => FALSE); END;

*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 


commit
*
ERROR at line 1:
ORA-01034: ORACLE not available 
Process ID: 0 
Session ID: 0 Serial number: 0 

내가 뭘 잘못하고 있는 거지?

가상 머신(openSUSE 13.01 64bit)에서 XE를 구성하려고 하는 상황에서 한 배를 탔습니다.

내 경우 해결책은 호스트 이름이 없어진 것입니다./etc/hosts. 의 오류를 검사할 수 있습니다./u01/app/oracle/product/11.2.0/xe/config/log/CloneRmanRestore.log(경로는 XE 버전에 따라 다릅니다.)

다음과 유사한 정보를 검색합니다.ORA-00119: invalid specification for system parameter LOCAL_LISTENER ORA-00130: invalid listener address '(ADDRESS=(PROTOCOL=TCP)(HOST=linux-cn65.site)(PORT=1521))

따라서 linux-cn65.site(VM 호스트)가 없습니다.호스트를 /etc/hosts(루트로)에 추가합니다.

127.0.0.1 linux-cn65.site<-- 당신의 호스트가 여기 있습니다.

구성을 다시 실행합니다(루트로).sh /etc/init.d/oracle-xe configure

추가속임

  • 로그 폴더에 오류 파일이 없는 경우 다음과 같이 h 플래그 없이 XE를 다시 설치할 수 있습니다.

    • 소포 찾기:sudo rpm -qa | grep -i oracle
    • 제거 방법:sudo rpm -e oracle-xe-11.2.0-1.0.x86_64<-- 당신의 소포가 여기 있습니다.
  • h 플래그 없이 다시 설치:sudo rpm -iv oracle-xe-11.2.0-1.0.x86_64.rpm

아, 버전( oracle-xe-11.2.0-1.0.x86_64.rpm)을 사용자 버전으로 대체합니다.건배 ;)

nano /etc/init.d/oracle-shm

텍스트를 추가합니다.

#! /bin/sh 
# /etc/init.d/oracle-shm 
# 
case "$1" in 
start) 
echo "Starting script /etc/init.d/oracle-shm" 
# Run only once at system startup  
if [ -e /dev/shm/.oracle-shm ]; then 
echo "/dev/shm is already mounted, nothing to do" 
else 
rm -f /dev/shm 
mkdir /dev/shm 
mount --move /run/shm /dev/shm 
mount -B /dev/shm /run/shm 
touch /dev/shm/.oracle-shm 
fi 
;; 
stop) 
echo "Stopping script /etc/init.d/oracle-shm" 
echo "Nothing to do" 
;; 
*) 
echo "Usage: /etc/init.d/oracle-shm {start|stop}" 
exit 1 
;; 
esac 
# 
### BEGIN INIT INFO 
# Provides: oracle-shm 
# Required-Start: $remote_fs $syslog 
# Required-Stop: $remote_fs $syslog 
# Default-Start: 2 3 4 5 
# Default-Stop: 0 1 6 
# Short-Description: Bind /run/shm to /dev/shm at system startup. 
# Description: Fix to allow Oracle 11g use AMM. 
### END INIT INFO

파일을 실행할 수 있도록 합니다.

chmod 755 /etc/init.d/oracle-shm
/etc/init.d/oracle-shm start

이 단계에서 재부팅 후 확인합니다.

df -kh /dev/shm

계속해서 chkconfig 에뮬레이션을 진행하고 나머지 구성 및 설치를 계속합니다.

dpkg -i oracle-xe-11.2.0-1.0.x86_64.deb

환경변수 및 ORACLE_HOME 확인 후 데이터베이스 시작

/etc/hosts 파일을 확인합니다.다음과 같이 보여야 합니다.

127.0.0.1 localhost.localdomain localhost hostname.domain hostname

http://blog.christian-stankowic.de/ ?p=5276& lang=en

저도 고생했어요.저는 몇 가지 다른 해결책을 시도해 보았지만 여전히 문제가 있습니다.memory_target을 데이터베이스 구성에서 제거하여 "수정"했습니다.

sqlplus / as sysdba
create pfile=‘<path>’ from spfile 
!vi <path>

memory_Target으로 줄 앞에 #를 추가하고 파일을 저장한 후 닫습니다.

startup from pfile=‘<path>'
create spfile from pfile=‘<path>’

이 솔루션은 제 XE 데이터베이스와 잘 어울립니다. 도움이 되기를 바랍니다.

Ubuntu 14.04와 같은 문제가 있었습니다.ubuntu가 /dev/shm의 symlink와 함께 /run/shm을 사용하는 것으로 변경되는 동안 /dev/shm에 충분한 공간이 필요할 것으로 예상되는 Oracle-XE로 문제가 해결되었습니다.

저에게 효과적인 솔루션은 다음을 포함하는 /etc/rc2.d/S01shm_load 파일을 만드는 것이었습니다.

#!/bin/sh
case "$1" in
start)
    mkdir /var/lock/subsys 2>/dev/null
    touch /var/lock/subsys/listener
    rm /dev/shm 2>/dev/null
    mkdir /dev/shm 2>/dev/null
    mount -t tmpfs shmfs -o size=2048m /dev/shm ;;
*)
    echo error
    exit 1
    ;;    
esac

XE 설치에 관한 다른 많은 페이지들과 비슷한 http://sysadminnotebook.blogspot.de/2012/10/installing-oracle-11g-r2-express.html 에서 이것을 받았지만 이 솔루션을 가진 유일한 페이지였습니다.

PS. 파일 권한은 755로 설정되어 있으므로 다음을 실행해야 합니다.

sudo chmod 755 /etc/rc2.d/S01shm_load

이 파일에 대한 권한을 설정합니다.

이 링크에 답이 있는 것 같습니다./dev/shm이 시스템에 마운트되어 있는지 확인하고 메모리_ 이상을 할당해야 합니다.대상.

fstab에 다음을 추가하고 재부팅하면 됩니다.(이것은 /dev/shm 크기를 2gb로 설정합니다.)

shmfs /dev/shm tmpfs size=2048m 0 0

먼저 설치해야 하는 패키지가 여러 개 있고 데이터베이스를 실제로 시작하려면 먼저 변경해야 하는 커널 매개 변수도 있습니다.Linux용 Oracle 설치 가이드를 참조하거나 Google에서 Ubuntu의 Oracle 11gR2 XE에 대한 구체적인 가이드를 검색하십시오.

언급URL : https://stackoverflow.com/questions/16545412/problems-installing-oracle-database-express-edition-11g

반응형