English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Oracle 12c 설치 방법 및 일부 사용 문제

Linux Centos6.5 64bit에 oracle 설치12c:

groupadd oinstall
groupadd dba
mkdir -p /u01/oracle
useradd -g oinstall -G dba -d /u01/oracle oracle
이곳은 home 디렉토리를 변경할 필요는 없습니다/u01/oracle(기본적으로도 가능합니다).
다음 세 파일을 복사하세요 /u01/oracle 디렉토리에
[root@oracle /]# cd /etc/skel/
[root@oracle skel]# ll -a
-rw-r--r--. 1 root root 18 7월 18 2013 .bash_logout
-rw-r--r--. 1 root root 176 7월 18 2013 .bash_profile
-rw-r--r--. 1 root root 124 7월 18 2013 .bashrc
주의: useradd 사용자 추가 시, 자동으로 이 디렉토리의 파일을 사용자 홈 디렉토리로 복사합니다
password oracle
chown -R oracle:oinstall /u01
chmod -R 775 /u01/

/*vnc 설치*/

yum -y install tigervnc-서버
vncserver 엔터
패스워드 입력
ps -ef | grep vnc
vnc 클라이언트 연결: ip:1

테스트하려면 다음 프로그램이 설치되어 있는지 확인하세요:

binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3 -
elfutils-libelf-0.125
elfutils-libelf-devel-0.125 -
elfutils-libelf-devel-static-0.125 -
gcc-4.1.2 -
gcc-c++-4.1.2 -
glibc-2.5-24
glibc-common-2.5
glibc-devel-2.5
glibc-headers-2.5
kernel-headers-2.6.18
ksh-20060214 -
libaio-0.3.106
libaio-devel-0.3.106 -
libgcc-4.1.2
libgomp-4.1.2
libstdc++-4.1.2
libstdc++-devel-4.1.2 -
make-3.81
sysstat-7.0.2 
unixODBC-2.2.11 -
unixODBC-devel-2.2.11 -

수정 /etc/sysctl.conf 파일에 다음 파라미터 추가

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
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 = 1048586

시스템 재부팅 없이 위 설정을 적용하려면 다음 명령어 실행:
# /sbin/sysctl -p

사용자 제한 수정:

root 사용자에서 수정: /etc/security/limits.conf 파일에 다음 파라미터 추가

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

사용자 인증 옵션 수정:
root 사용자 아래에서 수정:/etc/pam.d/login 파일에 다음 파라미터 추가

session required pam_limits.so

사용자 설정 파일 수정:
root 사용자 아래에서 수정:/etc/profile 파일에 다음 파라미터 추가:

if [ $USER = "oracle" ]; then
  if [ $SHELL = "/bin/ksh" ]; then
    ulimit -p 16384
    ulimit -n 65536
  else
    ulimit -u 16384 -n 65536
  fi
fi

oracle 사용자 bash_profile 수정:
$ vi .bash_profile
아래 내용 추가하여 수정:

export ORACLE_BASE=/u01 
export ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1
export ORACLE_SID=hxw168 
export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin

Oracle 설치:

Oracle 설치 후 명령어 사용 불가:/usr/bin/xdpyinfo가 디스플레이의 색상을 자동으로 확인:

[root@oracle /]# xdpyinfo | grep "display 이름"
display 이름: :1.0
[root@oracle /]# 
Oracle 사용자 아래에서 명령어 실행:
export DISPLAY=:1.0 (위의 name of display: 뒤의 :1.0)

prvf-0002: 로컬 노드 이름을 검색할 수 없습니다

host 파일 ip와 이름이 일치합니다
192.168.198.188 oracle

SQL> create user admin identified by zerostudy;
create user admin identified by zerostudy
*
ERROR at line 1:
ORA-65096: invalid common user or role name


SQL> !oerr ora 65096
65096, 00000, "invalid common user or role name"
// *Cause: 이름이 "invalid common user or role name"로 생성된 일반 사용자나 역할을 생성하려는 시도가 있었습니다.
// 일반 사용자나 역할에 대해 유효하지 않습니다. 또한
// 일반 사용자와 역할 이름, 일반 사용자와 역할의 일반 규칙
// 이름은 C## 또는 c##으로 시작해야하며 ASCII만 포함해야 합니다
// 글자.
// *Action: 유효한 일반 사용자 또는 역할 이름을 지정합니다.
//

해결 방법: https://ko.oldtoolbag.com/article/92720.htm

가상 머신의 메모리를 조정하여600 많은M(원래1G 많은), Oracle을 시작할 때 다음과 같은 알림이 표시됩니다:
SQL> startup
ORA-00845: 이 시스템에서 MEMORY_TARGET는 지원되지 않습니다

SQL> !oerr ora 00854
00854, 00000, "ASM IOServer Instance Fence 모니터 프로세스가 종료되었습니다."
// *Cause: ASM IOServer Fence 모니터 프로세스가 종료되었습니다.
// *Action: 인스턴스를 Warms Start합니다.

원인은 Linux 시스템의 shm 크기가 SGA 설정보다 작기 때문입니다.
shm의 크기를 조정할 수 있습니다:
vi /etc/fstab
설정을 수정하십시오
tmpfs /dev/shm tmpfs defaults 0 0
변경
tmpfs /dev/shm tmpfs defaults,size=6G 0 0
shm을 다시 mount하여 적용
mount -o remount /dev/shm

TNS-12514: TNS:listener는 현재 연결 설명자에서 요청된 서비스를 알지 못합니다

listener.ora 파일을 변경해야 합니다($ORACLE_HOME 경로에서)/network/admin),그런 다음 lsnrctl을 재시작

# Oracle 구성 도구로 생성된 파일.
#LISTENER =
# (DESCRIPTION_LIST =
# (DESCRIPTION =
#  (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)
#  (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.198.188)(PORT = 1521)
# )
# )
hxw168 =
 )(DESCRIPTION_LIST =
 )(DESCRIPTION =
  )(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.198.188)(PORT = 1521)
 )
 )
 SID_LIST_hxw168=
 (SID_LIST =
 (SID_DESC =
  (ORACLE_HOME = /u01/app/product/12.1.0/db_1)
  (SID_NAME = hxw168)
 )
 )

oracle 간단한 시작 스크립트:

[root@oracle ~]# cat /etc/init.d/oracle 
su - oracle <<EOF
lsnrctl start
sqlplus / as sysdba
startup
EOF

이 글은 “이해하지 못해도 망가져야 한다!” 블로그에서 출처

추천해드립니다