The Pursuit of Happyness

반응형

테스트 환경

Ubuntu 16.04.2 LTS


Oracle DB를 이용할 일이 생겨서 Ubuntu에 Oracle XE를 설치해 보았습니다.


설치하는데 아래 링크를 참조했습니다.

http://www.gokhanatil.com/2016/04/how-to-install-oracle-11gr2-xe-on-ubuntu.html


먼저 설치 패키지를 아래 링크에서 다운로드 합니다. 

(2017년 3월 30일 현재 2014년에 배포한 11gR2 가 최신버전 입니다.)

http://www.oracle.com/technetwork/database/database-technologies/express-edition/downloads/index.html


Oracle 홈페이지에서는 리눅스 용으로는 rpm을 zip으로 압축해서 배포하고 있습니다.


다운로드 완료 후에는 다음 명령으로 압축을 풀어 줍니다.


$ unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip


압축이 풀리면 Disk1 폴더가 생성되고 그 안에 rpm 파일이 있습니다.


rpm 파일을 Ubuntu 에서 쓰는 deb 파일로 변환을 해 주어야 합니다.


rpm을 deb로 변경할 때는 alien 을 사용하게 됩니다. 


만약 alien 이 설치되어 있지 않다면 다음 명령으로 설치합니다.


$ sudo apt install alien 


그리고 오라클 사용에 필요한 라이브러리를 설치합니다. (사용자의 환경에 따라 이미 설치되어 있을 수도 있습니다.)


$ sudo apt install libaio1


Disk1 폴더에서 아래 명령으로 rpm을 deb로 변경합니다. (시간이 상당히 걸리는 작업입니다.)


$ sudo alien --scripts oracle-xe_11.2.0-1.0.x86_64.rpm


deb 파일을 다음 명령으로 설치를 합니다.


$ sudo dpkg -i oracle-xe_11.2.0-2_amd64.deb


설치 도중에 /sbin/chkconfig 가 없다는 메시지가 나오게 되는데, redhat 계열에서 사용하는 설정인데 무시하셔도 상관 없습니다. 그래도 설정을 하고 싶다면, 아래 링크를 참조하세요.

http://meandmyubuntulinux.blogspot.com/2012/05/installing-oracle-11g-r2-express.html


그리고 설치 후에는 설정을 위해서 스크립트를 실행해야 합니다. 실행시에 발생할 에러를 막기 위해서 아래와 같이 링크를 설정하고 폴더를 생성합니다. (폴더가 이미 존재하는 경우도 있습니다.)


$ sudo ln -s /usr/bin/awk /bin/awk

$ sudo mkdir /var/lock/subsys


그리고 스크립트를 돌려서 초기 설정을 합니다.


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


초기 설정을 위해 몇가지 질문을 하는데, 성실히 대답해 주면 됩니다.


아래 명령으로 시작합니다.


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


아래 명령으로 서버를 종료합니다.


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




반응형

반응형

테스트 환경

Ubuntu (16.04.2 LTS)


Ubuntu 사용 도중 crash 가 발생하면 부팅시에 계속 메시지가 나타나게 됩니다.


문제가 해결되고 나서도 메시지가 계속 나타나는 경우 다음의 방법으로 해결 합니다.


1. 터미널을 연다. (Ctrl + Alt + t)


2. 다음 경로로 이동


$ cd /var/crash 



3. crash 파일 확인 후 삭제 



반응형

반응형

Linux 콘솔에서는 기본적으로 하나의 foreground job 을 수행할 수 있는데, 여러 개의 작업을 동시에 실행할 때에는 screen 명령을 이용해서 가상의 콘솔을 이용할 수 있다.


1. 기본 사용법


> screen 



2. 스크린 추가하기


^A^C



3. 스크린 닫기


exit : 현재 스크린 닫기

^D : 현재 스크린 닫기

^A\ : 전체 스크린 종료 및 screen 명령 종료



4. 스크린 전환하기


^A^P : 이전 번호의 스크린으로

^A^N : 다음 번호의 스크린으로

^A0, ^A1, ... ^A9 : 해당 번호의 스크린으로 이동

^A' : 이동할 스크린 번호 입력해서 이동

^A^A : 바로 전에 사용한 스크린으로 이동



5. 현재 스크린 확인


^AN : 현재 스크린 번호 확인

^A^W : 전체 스크린 리스트 확인





반응형

반응형

실행환경 Ubuntu 14.04 LTS


root 권한으로 실행한다고 가정

eth0 를 고정 IP로 설정한다고 가정

설정은 다음과 같다고 가정

IP 10.0.0.10 

gateway 10.0.0.1 

netmask 255.255.255.0 

dns-nameservers 8.8.8.8 8.8.4.4


/etc/network/interfaces 파일을 편집한다.


파일에서 아래와 같은 부분을 찾는다.

# The primary network interface 

auto eth0 

iface eth0 inet dhcp


다음과 같이 수정한다.

# The primary network interface 

auto eth0 

iface eth0 inet static 

address 10.0.0.10 

gateway 10.0.0.1 

netmask 255.255.255.0 

dns-nameservers 8.8.8.8 8.8.4.4


수정 후 다음의 두 명령어를 차례로 실행하여 eth0 리로드 한다.

ifdown eth0

ifup eth0 


혹은 다음의 명령어를 이용해서 전체 네트워크를 리로드 해도 된다. 

(네트워크 카드가 여러 개 설정 된 경우 전체가 리로드 되어 서비스가 잠시 중단될 수 있으니 주의!)

 service networking restart



반응형

반응형

mysql 데이터 저장 경로 변경하기

/data/mysql 로 변경한다고 가정


  • mysql 설정 파일을 변경한다.

vi /etc/mysql/my.cfg

datadir 부분을 찾아셔 다음과 같이 변경한다.

datadir     = /data/mysql


  • Apparmor access 변경

설정 파일을 변경한 후에 mysql 서비스를 실행하는 경우 로그에 다음과 같은 에러가 나올 경우

/etc/apparmor.d/usr.sbin.mysql 파일을 편집하여 해당 datadir 경로의 권한 추가해 준다.

110727 12:48:32 [Note] Plugin 'FEDERATED' is disabled.
/usr/sbin/mysqld: Can't find file: './mysql/plugin.frm' (errno: 13)
110727 12:48:32 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
110727 12:48:32  InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name ./ibdata1
InnoDB: File operation call: 'open'.
InnoDB: Cannot continue operation.

/data/mysql/ r,
/data/mysql/** rwk,

  • ldata 경로 변경
경로 변경 및 access 설정 변경후 아래와 같은 에러가 발생할 경우 다음과 같이 조치한다.
[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
> mysql_install_db –-user=mysql ldata=/data/mysql
+ 잘 안되는 경우 그냥 mysql_install_db 만 실행 


반응형

반응형

Install Ubuntu Server


Select a language

English - English


Select your location

United States


Configure the keyboard

No


Configure the keyboard

English (US)


Configure the keyboard

English (US)


Configure the network

[hostname]


Set up users and passwords

Full name for the new user:

[display name]


Set up users and passwords

Username for your account:

[account name]


Set up users and passwords

Choose a password for the new user:

****

Set up users and passwords

Re-enter password to verify:

****

Set up users and passwords

Encrypt your home directory?

No


Configure the clock

Yes


Partition disks

Partitioning method:

Guided - use entire disk and set up LVM


Partition disks

Select disk to partition:

[select partition]


Partition disks

Write the changes

Yes


Partition disks

Amount of volume group to use for guided partitioning:

max


Partition disks

Write the changes to disks

Yes


Configure the package manager

Continue


Configuring tasksel

No automatic updates


Software selection

Continue


Install the GRUB boot loader on a hard disk

Yes


Finish the installation

Continue



반응형

반응형

1. install apache, mysql, php

sudo apt-get install tasksel

sudo tasksel install lamp-server


2. install oracle

apt-get install alien

alien -i oracle-xe-11.2.0-1.0.x86_64.rpm


3. edit TNS

vi /u01/app/oracle/product/11.2.0/xe/network/admin/tnsnames.ora


4. install php-pear

apt-get install php-pear php5-dev build-essential unzip libaio1


5. install oci

alien -i oracle-instantclient12.1-basic-12.1.0.1.0-1.x86_64.rpm 

alien -i oracle-instantclient12.1-devel-12.1.0.1.0-1.x86_64.rpm 

pecl install oci8


6. edit environment variable

echo ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe/ >> /etc/environment


7. edit php configuration

echo extension=oci8.so >> /etc/php5/apache2/php.ini

echo extension=oci8.so >> /etc/php5/cli/php.ini


8. edit apache2 envvars

vi /etc/apache2/envvars

# add this line 

export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe


9. restart apache

sudo /etc/init.d/apache2 restart

or

sudo service apache2 restart


참고자료

https://help.ubuntu.com/community/ApacheMySQLPHP

https://help.ubuntu.com/community/PHPOracle

http://kogentadono.com/2011/11/02/installing-oci8-on-ubuntu/



반응형