2013-05-14 2 views
13

this guide을 사용하여 (X) 우분투 13.04 64 비트에 Oracle Database를 설치하려고합니다. 나는 다음과 같은 단계에 도달 할 때까지 모든 것이 잘 goed :Oracle Database Express Edition 11g 설치 문제

$ 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 

내가 잘못하고있는 중이 야 무엇을?

+0

오라클을 학교 수업에 사용해야했지만 제대로 작동하지 않아 사전 설치된 VM을 사용하기로 결정했습니다. 나는 더 이상 해결책을 찾지도 않고 그들을 시도하지도 않을 것입니다. '닫기'를 누르면이 질문을 올바르게 종료 한 이유를 설명하는 옵션이 표시되지 않습니다. 질문을 삭제해야합니까? 대답은 다른 사람들에게 도움이 될 수 있습니다. –

답변

1

This link looks like it has the answer./dev/shm이 시스템에 마운트되었는지 확인하고 적어도 MEMORY_TARGET 이상의 메모리를 할당해야합니다.

fstab에 다음을 추가하고 재부팅하면됩니다. (이 2GB의는/dev/SHM의 크기를 설정합니다) :

몇 가지를 먼저 설치해야 할 패키지, 플러스 실제로 데이터베이스를 시작하기 전에 변경해야 할 몇 가지 커널 매개 변수가
shmfs /dev/shm tmpfs size=2048m 0 0 
+0

나는 이것을 시도했지만 차이를 만들지 않았다. 로그를 삭제했지만 동일한 로그가 다시 나타납니다. –

+0

'mount'를 입력하면/dev/shm이 마운트되어 있습니까? – antlersoft

+0

그렇지 않습니다 : ': ~ $ mount | grep shm \ n 없음 on/run/shm 유형 tmpfs (rw, nosuid, nodev) ' –

0

. Linux 용 오라클 설치 가이드를 참조하거나 우분투에서 Oracle 11gR2 XE에 대한 특정 가이드를 검색하십시오.

+0

여러 가이드를 사용해 보았습니다. 링크 된 패키지가 가장 쉬운 것 같지만 다른 가이드에 언급 된 필수 패키지를 설치했습니다. –

8
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 및 시작 데이터베이스

+0

+1 +1이 작동합니다. – mb2015

+0

Linux 용으로 시도한 사람이 있다면. 위의 oracle-shm은 Linux 6에서 다음과 같은 오류를 표시합니다. mount : 특수 장치/run/shm이 없습니다. 마운트 : 마운트 지점/run/shm이 없습니다. – JackDev

+0

X- 시작 전 : OracleXE 라인을 INIT INFO 블록. 그러면 OracleXE 시작 스크립트보다 먼저 실행됩니다. – EdwinW

28
내가 가상 머신에 XE를 구성하기 위해 노력하고, 같은 배를했다

(오픈 수세 13.01 64 비트) .

제 경우의 해결책은 누락 된 호스트 이름이 /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

추가 속임수

  • 로그 폴더에 오류 파일이 없으면 플래그 (예 : t)를 사용하지 않고 XE를 다시 설치할 수 있습니다. 그의 : sudo rpm -qa | grep -i oracle

  • 그것을 제거 : sudo rpm -e oracle-xe-11.2.0-1.0.x86_64 < - 여기 패키지
  • 시간 플래그없이 다시 설치 :

    • 는 패키지를 찾을 수 sudo rpm -iv oracle-xe-11.2.0-1.0.x86_64.rpm

    을 오 버전 (oracle-xe-11.2.0-1.0.x86_64.rpm)을 사용중인 버전으로 바꿉니다. 환호;)

  • +2

    실제로 그것은 호스트 이름이었습니다 :) 매력처럼 작동했습니다! – Radu

    +0

    헤이 @kodeart 당신은 멋진 사람이다. .. 단지 youwuzzz ...이었다. – beginer

    +0

    가장 좋은 대답 –

    2

    나는 이것 또한 고투했다. 몇 가지 해결책을 시도했지만 여전히 문제가 있습니다. 저장하고 닫은 다음 파일 memory_Target으로 라인의 앞에

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

    추가 번호 : 나는 데이터베이스 구성에서 memory_target을 제거하여 "고정".

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

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

    +0

    데이터베이스 구성에서 memeory 타깃을 제거하려고하는 곳 –

    2

    우분투 14.04와 관련하여 정확한 문제가있었습니다. 오라클 - XE는/dev/shm에서 충분한 공간을 예상하고 우분투는/dev/shm에서 심볼릭 링크로/run/shm을 사용하도록 변경했습니다.

    나를 위해 일한 해결책은 포함 된 파일 /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 
    

    내가 http://sysadminnotebook.blogspot.de/2012/10/installing-oracle-11g-r2-express.html에서이있어 XE 설치에 많은 다른 페이지에 유사하지만이었다 이 해결책으로 단 하나.

    추신. 파일 권한을 755로 설정되어있다 그래서 당신은 실행해야합니다

    sudo chmod 755 /etc/rc2.d/S01shm_load

    이 파일에 대한 권한을 설정할 수 있습니다.

    +0

    모든 해결책을 시도했지만 이것은 나를 위해 일했다. 유효한 설명과 함께 ... 감사합니다! –

    +0

    이상하게 보입니다. 왜 'rm/dev/shm 2>/dev/null'이 아닌 'rm/dev/shm 2>/dev/null'이 사용 되는가? 나는 꽤 제대로 작동하지 않습니다. – hariprasad

    관련 문제