ÃֽŠ°Ô½Ã±Û(DB)
2018.05.26 / 01:36

ubuntu ¿¡ oracle 11g Release2 ¼³Ä¡ -3 Ãâó: http://shinyul.tistory.com/11?category=541650 [½ÃÀÛ...]

ÀλçÀ̵åÀÚ¹Ù
Ãßõ ¼ö 221

ÇØ´ç °Ô½Ã±ÛÀº http://ioriy2k.pe.kr/archives/815 ¿¡¼­ ÆÛ¿Ô½À´Ï´Ù.

Âü°í Çß´ø °Ô½Ã¹°Áß °¡Àå Á¤È®ÇÑ °Ô½Ã¹° ÀÌ¿´½À´Ï´Ù. ¹®Á¦½Ã »èÁ¦ Çϵµ·Ï ÇÏ°Ú½À´Ï´Ù.




1. SystemÀÌ ½ÃÀÛµÉ ¶§ OracleÀ» ÀÚµ¿À¸·Î ½ÇÇàÇϱâ

OracleÀ» ¼³Ä¡ÇÑ SystemÀÌ BootÇÒ ¶§¸¶´Ù ÀÚµ¿À¸·Î Oracle Database¸¦ ½ÇÇàÇÒ ¼ö ÀÖµµ·Ï Init Script¸¦ ÀÛ¼ºÇÏ¿© µî·ÏÇϸé OracleÀ» ½ÇÇàÇÒ ¶§ÀÇ ¿©·¯ ¸í·É¾î¸¦ ÀÔ·ÂÇÏ´Â ±ÍÂúÀ½À» ÁÙÀÏ ¼ö ÀÖ½À´Ï´Ù. ¸ÕÀú dbstart¿Í °°Àº ¸í·É¿¡¼­ Database Instance¸¦ ÀÚµ¿À¸·Î ½ÇÇàÇÒ ¼ö ÀÖµµ·Ï /etc/oratabÀ» ¼öÁ¤ÇÕ´Ï´Ù. ¸¶Áö¸· : µÚ¿¡ NÀ» Y·Î °íÄ¡°í ÀúÀåÇÕ´Ï´Ù.

1
2
3
4
$ su - oracle
$ vi /etc/oratab

orcl11:/opt/oracle/product/11.2.0/db_1:Y

±× ´ÙÀ½, ¾Æ·¡¿Í °°Àº Init Script¸¦ ÀÛ¼ºÇÕ´Ï´Ù. ¸î °¡Áö º¯¼ö°¡ Script³»¿¡ ¼³Á¤µÇ¾î Àִµ¥, System¿¡ ¼³Ä¡µÈ °æ·Î°¡ ´Ù¸£´Ù¸é º¯¼öÀÇ °ªÀ» °¢ÀÚ ¼³Á¤¿¡ ¸Â°Ô ¼öÁ¤ÇÏ½Ã¸é µË´Ï´Ù. (ORACLE_BASE, ORACLE_HOME)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
$ sudo vi /etc/init.d/oracle

#!/bin/bash
#
# /etc/init.d/oracle
#
# Run-level Startup script for the Oracle Listener and Instances
# It relies on the information on /etc/oratab

export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_OWNR=oracle
export PATH=$PATH:$ORACLE_HOME/bin

if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
then
echo "Oracle startup: cannot start"
exit 1
fi

case "$1" in
start)
# Oracle listener and instance startup
echo -n "Starting Oracle: "
su $ORACLE_OWNR -c "$ORACLE_HOME/bin/lsnrctl start"
su $ORACLE_OWNR -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
touch /var/lock/oracle
echo "OK"
;;
stop)
# Oracle listener and instance shutdown
echo -n "Shutdown Oracle: "
su $ORACLE_OWNR -c "$ORACLE_HOME/bin/lsnrctl stop"
su $ORACLE_OWNR -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"
rm -f /var/lock/oracle
echo "OK"
;;
reload|restart)
$0 stop
$0 start
;;
*)
echo "Usage: `basename $0` start|stop|restart|reload"
exit 1
esac

exit 0

$ sudo chmod 755 /etc/init.d/oracle

ÀÌÁ¦ ¸¶Áö¸·À¸·Î Init script¸¦ rc¿¡ µî·ÏÇÕ´Ï´Ù. Ubuntu¿¡¼­´Â update-rc.d ¸í·ÉÀ» »ç¿ëÇÏ¸é ½±°Ô µî·ÏÇÒ ¼ö ÀÖ½À´Ï´Ù.

1
$ sudo update-rc.d oracle defaults

¸¸¾à, System ½ÇÇà ½Ã ÀÚµ¿À¸·Î ½ÇÇàÇÏ°í ½ÍÁö ¾Ê´Ù¸é ¾Æ·¡¿Í °°Àº ¸í·ÉÀ» ½ÇÇàÇÕ´Ï´Ù.

1
$ sudo update-rc.d -f oracle remove

±×¸®°í Oracle ¼­ºñ½º¸¦ Á¾·áÇÏ°í ½ÍÀ¸¸é ´ÙÀ½°ú °°ÀÌ ÀÔ·ÂÇÕ´Ï´Ù.

1
$ sudo service oracle stop

2. System¿¡ ÀÖ´Â ¸ðµç User°¡ OracleÀ» »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ¸¸µé±â

Oracle Database ¼³Ä¡ ½Ã¿¡ »ý¼ºÇÑ °èÁ¤ÀÎ oracleÀº DBA¸¦ À§ÇÑ °èÁ¤À¸·Î DatabaseÀÇ ¸ðµç °ÍÀ» ¼³Á¤ÇÒ ¼ö ÀÖ´Â °èÁ¤ÀÔ´Ï´Ù. ±× ¿ÜÀÇ dba Group¿¡ ¼ÓÇÏÁö ¾Ê´Â °èÁ¤µéÀº ÀϹÝÀûÀ¸·Î DBA°¡ ÁÖ¾îÁø ±ÇÇÑ¿¡ µû¶ó sqlplus³ª ±× ¿ÜÀÇ ToolÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀ» System Àü¿ªÀÇ ¸ðµç User°¡ »ç¿ëÇÏ°Ô ÇÏ°í ½Í´Ù¸é/etc/profile.d¿¡ ´ÙÀ½°ú °°Àº ȯ°æº¯¼ö¸¦ ÀúÀåÇÏ°í, RebootingÇÏ¸é µË´Ï´Ù. (¹°·Ð Test³ª Study ¿ëµµ·Î´Â Æí¸®ÇÏÁö¸¸, ½ÇÁ¦·Î »ç¿ëÇϱ⿡´Â ±×´ÙÁö ÁÁÀº ¹æ¹ýÀº ¾Æ´Õ´Ï´Ù.)

1
2
3
4
5
6
$ sudo vi /etc/profile.d/oracle.sh

export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=orcl11
export PATH=$PATH:$ORACLE_HOME/bin

±×¸®°í System Àü¿ªÀ¸·Î OracleÀÇ °¢ ¸í·ÉµéÀ» »ç¿ëÇÏ·Á¸é Library Path¸¦ Àû¿ëÇØ¾ß ÇÕ´Ï´Ù. Ubuntu´Â °¢ Library Path¸¦ ÀúÀåÇϱâ À§ÇÑ DirectoryÀÎ /etc/ld.so.conf.d¿¡ ¾Æ·¡¿Í °°ÀÌ °æ·Î¸¦ ÀûÀº FileÀ» µÎ¸é System Àü¿ª¿¡ Library Path°¡ ¼³Á¤µË´Ï´Ù.

1
2
3
4
5
$ sudo vi /etc/ld.so.conf.d/oracle.conf

/opt/oracle/product/11.2.0/db_1/lib

$ sudo ldconfig

3. DB »ç¿ëÀ» À§ÇÑ ÀÏ¹Ý °èÁ¤ »ý¼ºÇϱâ

Database¸¦ Á¢¼ÓÇϱâ À§ÇÑ ÀÏ¹Ý °èÁ¤À» »ý¼ºÇϱâ À§Çؼ­ ¸ÕÀú dbaÀÎ oracle °èÁ¤¿¡¼­ SYSDBA±ÇÇÑÀ¸·Î ´ÙÀ½°ú °°ÀÌ Á¢¼ÓÇÕ´Ï´Ù.

1
2
$ su - oracle
$ sqlplus / as sysdba

»õ·Î »ý¼ºÇÒ ÀÏ¹Ý °èÁ¤À» À§ÇÑ Tablespace¸¦ ¸ÕÀú »ý¼ºÇÕ´Ï´Ù. Tablespace´Â User¿¡ ºÐ¾çÇϱâ À§ÇÑ DatabaseÀÇ ºÎºÐ ÁýÇÕ Á¤µµ·Î »ý°¢ÇÏ¸é µÉ °Í °°³×¿ä. ½ÇÁ¦·Î Tablespace ³»¿¡´Â User°¡ »ý¼ºÇÑ Table, Index, Cluster µîÀÌ µé¾îÀÖ½À´Ï´Ù. ¾Æ·¡ÀÇ SQL¹®Àº ¿¹½Ã·Î Á¦ ÀÔ¸À¿¡ ¸Â°Ô ¸¸µç °ÍÀÔ´Ï´Ù. ±âº»Å©±â·Î 300M¸¦ ÇÒ´çÇÏ°í ÀÚµ¿ Áõ°¡¿Í ÃÖ´ëÅ©±â¸¦ ¼³Á¤Çß½À´Ï´Ù.

1
2
3
4
CREATE TABLESPACE "<TABLESPACE À̸§>"
DATAFILE '/home/oracle/<DATAFILE À̸§>.dbf'
SIZE 300M
AUTOEXTEND ON NEXT 100M MAXSIZE 1000M;

±× ´ÙÀ½ »ç¿ëÀÚ¸¦ »ý¼ºÇÕ´Ï´Ù. Default Tablespace·Î ¹æ±Ý Àü¿¡ »ý¼ºÇÑ Tablespace À̸§À» ³ÖÀ¸¸é »ç¿ëÀÚ°¡ »ý¼ºÇÑ DB´Â ¸ðµÎ ÇØ´ç Tablespace¿¡ ÀúÀåµË´Ï´Ù.

1
2
3
CREATE USER <USER ID>
IDENTIFIED BY <PASSWORD>
DEFAULT TABLESPACE "<»ý¼ºÇÑ TABLESPACE À̸§>";

±×¸®°í »ý¼ºÇÑ »ç¿ëÀÚ¿¡°Ô ¾Æ·¡¿Í °°ÀÌ ±âº»ÀûÀÎ ±ÇÇÑÀ» ºÎ¿©ÇÕ´Ï´Ù.

1
GRANT CONNECT,resource,CREATE VIEW TO <USER ID>;

ÀÌÁ¦ »ý¼ºÇÑ °èÁ¤À» TestÇϱâ À§Çؼ­ ¾Æ·¡ÀÇ ¸í·ÉÀ» ÀÔ·ÂÇÑ ÈÄ, »ý¼ºÇÑ ID¿Í Password¸¦ ÀÔ·ÂÇÕ´Ï´Ù.

1
CONNECT

4. sqlplus¿¡¼­ ÇѱÛÀ» Á¦´ë·Î Ç¥½ÃÇÏ·Á¸é..

sqlplus¿¡¼­ Çѱ۷ΠÀÔ·ÂµÈ Record¸¦ º¸°Å³ª »ðÀÔÇÒ °æ¿ì ±ÛÀÚ°¡ Á¦´ë·Î Ç¥½ÃµÇÁö ¾Ê´Â ¹®Á¦°¡ ÀÖ½À´Ï´Ù. ¼³Ä¡ ½Ã¿¡ DBÀÇ CharsetÀ» AL32UTF8À¸·Î ¼³Á¤Çß´Ù¸é(ÀÌÀü PostÀÇ Step12. Configuration Options ÂüÁ¶), ´ÙÀ½°ú °°Àº ȯ°æº¯¼ö¸¦ ~/.bashrc ¶Ç´Â À§ÀÇ System Àü¿ª¼³Á¤À» ÇÑ °æ¿ì /etc/profile.d/oracle.sh¿¡ Ãß°¡ÇÕ´Ï´Ù.

1
export NLS_LANG=KOREAN_KOREA.AL32UTF8

5. Oracle 11g¸¦ °­Á¦·Î System¿¡¼­ »èÁ¦ÇÏ´Â ¹æ¹ý

¼³Ä¡ ½Ã¿¡ ¹®Á¦°¡ »ý°å°Å³ª System¿¡¼­ Oracle °­Á¦·Î »èÁ¦ÇÏ°í ½Í´Ù¸é Command-line¿¡¼­ ´ÙÀ½°ú °°ÀÌ ÀÔ·ÂÇÑ ÈÄ, SystemÀ» Àç½ÃÀÛÇÏ¸é µË´Ï´Ù.

1
2
3
4
5
6
7
8
9
10
$ sudo -s -H
$ service oracle stop
$ rm -rf /opt/oracle /opt/oraInventory
$ rm -f /etc/oratab /etc/oraInst.loc
$ find /etc -name '*oracle*' -type f -exec rm -f {} \;
$ cd /usr/local/bin
$ rm -f coraenv dbhome oraenv
$ userdel -rf oracle
$ groupdel oinstall
$ groupdel dba

6. Oracle 11g Release 2 ¼³Ä¡Çϱâ Post¸¦ ¸ðµÎ ¸¶Ä¡¸é¼­..

2000³âµµ Ãʹݿ¡ ¾î·Æ°Ô Linux¸¦ ¼³Ä¡ÇÏ°í ÇÊ¿äÇÑ RPMÀ» ¿©±âÀú±â¼­ ±¸Çؼ­ ¼³Ä¡Çؼ­ °Ü¿ì°Ü¿ì ¼³Ä¡Çß´ø Oracle 8iÀÇ ±â¾ïÀ» ¶°¿Ã·Áº¾´Ï´Ù. ±× ¶§¿¡ ºñÇؼ­´Â Áö±ÝÀº ³Ê¹«³ªµµ ÆíÇϳ׿ä. ±×µ¿¾È ÀÌ·¡Àú·¡ ¸¹Àº »ðÁúÀ» °ÅÄ¡¸é¼­ ½Ç·ÂÀÌ ´Ã¾î¼­À̱⵵ ÇÏ°ÚÁö¸¸, ¿¹Àü¿¡ ºñÇØ OracleÀÌ DBÀÚüÀÇ ±â¼úÀ» ¹ßÀü½ÃÅ°´Â °ÍÀ» ³Ñ¾î ¿ÜÀûÀÎ °Í¿¡µµ ½Å°æÀ» ¾²Áö ½ÃÀÛÇ߱⠶§¹®ÀÎ °Í °°³×¿ä. ±×¸®°í Linux ȯ°æÀÌ ¿¹Àüº¸´Ù ¸¹ÀÌ ÆíÇØÁø °Íµµ ÇÑ ¸ò ÇÏ´Â °Í °°½À´Ï´Ù. ±×·³ Áñ°Å¿î DB »ýÈ°(?) µÇ½Ã±æ..



Ãâó: http://shinyul.tistory.com/11?category=541650 [½ÃÀÛ...]