목차
---------------------------------------------------------------------
1. 목적
2. 사전준비
3. MYSQL 서버 설치작업
4. OMP DB 생성 및 TABLE 생성 , 기타 환경작업
5. 맺음말
6. 참고자료
---------------------------------------------------------------------
1.목적
이 문서는 MYSQL 서버를 설치에 대한 가이드를 제공합니다.
일반적으로 이 문서 작성 기준은 SunOs 기준으로 되어 있습니다.
다른 OS에서 설치 방법은 다릅니다. 또한 이 방식 이외에도 설치 방법이 존재
합니다.
그러나 설치에서 가장 중요한 목적은 OMP 패키지를 정상적으로 잘 구동시키기 위한것
입니다. 그러므로 일반적인 설치 방법과 조금은 틀릴 수 있습니다.
2.사전준비
MYSQL를 설치 하기 위해서는 설치하는 서버의 Os Version , Processor 구조 및
Disk 파티션의 크기를 알아야 합니다. 그리고 mysql 서버를 32bit , 64bit 설치 할지
선택해야 합니다. 설치 파악해야 하는 정보 목록 및 준비 사항 목록
** 모든 설치는 root 권한이 필요합니다.
번호 항목 내용 예 관련명령어
================================================================================
1 Os Version 설치하는 OS Version SunOs5.9 uname
2 Processsor sparc or x86 sparc uname
3 파티션크기 설치할 파티션 /data df -k
4 root계정권한 root 권한 획득 su
5 Kernel 정보 Kernnel 32 | 64 bit여부 64bit isainfo -kv
6 install mysql mysql 설치 파일
7 gtar 이전 mysql 설치 필요한 tar gtar
8 client프로그램 HeidiSQL ,mysql Front
9 OMP_Schema파일 Table 생성을 위한 Schema 파일
10 환경설정파일 비슷한 환경에서 사용되는 설정파일 my.cnf
2.1) OS 종류와 Version
uname -a 명령어로 확인 할 수 있습니다.
shell>uname -a
SunOS OMP 5.9 Generic_118558-25 sun4u sparc SUNW,Sun-Fire-V210
----- ---
ⓐ ⓑ
ⓐ - OS 종류
ⓑ - OS Version
OS 버젼에 따른 mysql 설치파일을 선택하여 다운로드 받아야 합니다.
SunOs 5.9 : Solaris 9
SunOs 5.10 : Solaris 10
2.2) Processor 종류 확인
uname -a 명령어로 확인 할 수 있습니다.
shell>uname -a
SunOS OMP 5.9 Generic_118558-25 sun4u sparc SUNW,Sun-Fire-V210
-----
ⓐ
ⓐ - processor type
2.3) 설치할 파티션 확인 하기
df -k 로 적당한 파티션을 선택합니다. 일반적으로 omp 운영 파티션와 다른
파티션에 설치하는 것이 일반적이죠. 그 이유는 잘 생각해 보세요.
일반적인 명령어는 df -k 이지만 SunOs 5.9 부터는 df -h가 더 좋음.
shell> df -h
파일시스템 크기 사용 가용 용량 설치지점
/dev/dsk/c0t0d0s0 9.6G 4.2G 5.3G 45% /
/proc 0K 0K 0K 0% /proc
mnttab 0K 0K 0K 0% /etc/mnttab
fd 0K 0K 0K 0% /dev/fd
swap 2.2G 168K 2.2G 1% /var/run
swap 2.2G 1.3M 2.2G 1% /tmp
/dev/dsk/c0t0d0s4 19G 369M 19G 2% /data --> ⓐ
/dev/dsk/c0t0d0s5 19G 9.9G 9.1G 53% /data1 --> ⓑ
/dev/dsk/c0t0d0s6 23G 22G 1004M 96% /data2 --> ⓒ
만약 위와 같은 결과 라면 어떤 것이 좋은 까요. ? [ ⓐ, ⓑ ,ⓒ ]
만약 OMP 운영 계정이 설치된 파티션이 /data --> ⓐ 라면
뭐 정답이 없지만 되도록 ⓑ 혹은 ⓒ 에 설치하는 것이 좋습니다.
현재는 ⓒ가 사용공간이 가장 많이 남았으므로 ⓒ (/data2) 가 정답 일 수 있겠죠.
2.4) root계정권한
당연한 이야기 이지만 반드시 root 권한으로 설치 해야 합니다.
그러기 위해서 root 권한 정보를 알아야 합니다.
2.5) Kernel 정보
Kernel 어떤 Application 을 지원하는 여부 64bit , 32bit 지원여부
shell> isainfo -kv
64-bit sparcv9 kernel modules
현재 설치되어는 64bit 커널이 설치되어 있으면 sparcv9도 지원한다는 의미 있지만.
64bit 경우는 32bit도 지원합니다.
전체 지원여부는 확인 하기 위해서 아래와 같은 옵션을 주어서 확인 합니다.
shell> isainfo -v
64-bit sparcv9 applications
32-bit sparc applications
2.6) Install 할 mysql 준비
2.1) - 2.5) 정보를 통해서 서버에 어떤 버전의 mysql 바이너리 파일을 설치 해야
할지를 결정할 수 있습니다.
만약 정보를 결과가 다음과 같다면
No Item Value
===================================
1 OS SunOs
2 Version 5.9
3 Processor sparc
4 Partition /data2
5 Kernel 64-bit
http://www.mysql.com 사이트에서
다음과 같은 버젼을 DownLoad 합니다.
mysql-5.0.67-solaris9-sparc-64bit.tar.gz
혹은 mysql-standard-4.1.20-sun-solaris2.9-sparc-64bit.tar.gz
여기서 mysql 버젼은 4.1.x 이상을 설치를 권장합니다.
여기서 기준은 4.1.20 기준으로 설명 하겠습니다.
mysql version에 따른 설정이 조금씩 틀릴 수 있지만 큰 차이는 없습니다.
** 주의) 만약 tar명령어 실행 결과가 체크섬 오류가 발생하는 경우라면
----------------------------------------------------------------------------
gtar를 다운로드 받아서 gtar로 압축 해지 해야 함.
이유는 솔라리스에 있는 tar 유틸리티가 긴 이름의 압축파일을 읽지 못하는 버그가
있기 때문이다.
- 자세한 설명 : http://akmamb.tistory.com/entry/linuxunix-tar-gtar-gzip
- gtar download site : http://www.filewatcher.com/m/gtar-solaris-4.1.4-sparc.gz.160392.0.0.html
만약 gtar를 다운로드 받을 수 없다면 관련 파일을 자료실에서 확인 할 수 있음.
설치방법은 gzip으로 압축 푼후 파일명은 gtar로 변경하고 실행 권한 준후에 사용하면됨.
----------------------------------------------------------------------------
2.7) GUI Client 다운로드 및 설치
pc에서 사용할 mysql용 GUI client를 설치함.
HeidiSQL : 다운로드 사이트(http://www.heidisql.com/)
Mysql Front : 다운로드 사이트(http://www.mysql.com)
2.8) OMP_Schema파일
mysql 서버를 설치 후 OMP에서 사용할 DB를 생성하고 TABLE 생성할 때 사용하는
SQL 파일입니다.
** 주의) 버젼를 주의하기 바랍.
2.9) 환경설정 파일
/etc/my.cnf 파일 즉 mysql 서버 구동 시 적용되는 mysql 서버 파라미터를 설정하는
파일 입니다.
메모리및 cpu 등 환경에 따라서 알맞게 설정된 파일 준비해야 합니다.
3. MYSQL 서버 설치작업
2. 사전준비가 모든 완료 되었다면 mysql 서버를 설치 작업을 진행해야 합니다.
설치 작업 순서는 pkgadd 방식이 아닌 tar 명령어를 사용하여 풀어서 적당한
디렉토리에 복사하는 방식을 취합니다.
설치파일 및 기타 설정 정보는 다음과 같다고 가정 합니다.
- 설치 홈 디렉토리 : $MYSQL_INSTALL_HOME=/data2/mysql-Version
- 설치 파일명 : $MYSQL_INSTALL_FILE=mysql-standard-4.1.20-sun-solaris2.9-sparc-64bit.tar.gz
3.1) root 로그인
$> su - root
3.2) mysql group 과 user 추가
#> groupadd mysql
#> useradd -d /data1/mysql -s /bin/bash -g mysql -m mysql
mysql 계정 생성시 디렉토리는 일반사용자 추가와 동일하게 합니다.
3.3) 설치 파일 압축 해제 및 복사
#> cp mysql-standard-4.1.20-sun-solaris2.9-sparc-64bit.tar.gz /data2/mysql
#> gzip -d mysql-standard-4.1.20-sun-solaris2.9-sparc-64bit.tar.gz
#> tar xvf mysql-standard-4.1.20-sun-solaris2.9-sparc-64bit.tar --> 참고 1.6)
#> mv mysql-standard-4.1.20-sun-solaris2.9-sparc-64bit.tar mysql-4.1.20
3.4) 심볼릭 링크 생성
#> cd /usr/local
#> ln -s $MYSQL_INSTALL_HOME mysql
3.5) mysql DB 초기화 작업
#> cd $MYSQL_INSTALL_HOME
#> scripts/mysql_install_db --> 주의ⓐ
** 주의ⓐ ) 반드시 위와 같은 순서로 설치해야 정상적으로 동작합니다.
만약 cd scripts 디렉토리로 이동후 mysql_install_db를 하면 정상적으로 동작하지
않을 수도 있습니다.
이유는 mysql_install_db 스크립트 파일은 상태 패스를 잡고 동작하도록 되어 있기
때문입니다. 반드시 주의 하세요.
3.6) mysql 관련 디렉토리 소유자및 그룹변경
#>cd $MYSQL_INSTALL_HOME
#>chown -R root .
#>chown -R mysql data
#>chgrp -R mysql .
여기서 ' . ' 은 $MYSQL_INSTALL_HOME 이며
data디렉토리는 $MYSQL_INSTALL_HOME/data 를 의미 합니다.
결과는 아래와 같아야 함.
::::::::::::::::::::::::::: ls -al :::::::::::::::::::::::::::
OMP [ ktfsg {568} /usr/local/mysql ] ls -al
총 104
drwxr-xr-x 14 root mysql 512 2006년 5월 25일 ./
drwxr-xr-x 11 root root 1024 2008년 7월 3일 ../
-rw-r--r-- 1 root mysql 19071 2006년 5월 25일 COPYING
-rw-r--r-- 1 root mysql 5712 2006년 5월 25일 EXCEPTIONS-CLIENT
-rw-r--r-- 1 root mysql 8111 2006년 5월 25일 INSTALL-BINARY
-rw-r--r-- 1 root mysql 1380 2006년 5월 25일 README
drwxr-xr-x 2 root mysql 1536 2006년 9월 1일 bin/
-rwxr-xr-x 1 root mysql 801 2006년 5월 25일 configure*
drwxr-x--- 8 mysql mysql 512 2008년 7월 28일 data/
drwxr-xr-x 2 root mysql 512 2006년 5월 25일 docs/
drwxr-xr-x 2 root mysql 1536 2006년 5월 25일 include/
drwxr-xr-x 2 root mysql 512 2006년 5월 25일 lib/
drwxr-xr-x 3 root mysql 512 2006년 5월 25일 man/
drwxr-xr-x 7 root mysql 512 2006년 5월 25일 mysql-test/
drwxr-xr-x 2 root mysql 512 2006년 5월 25일 scripts/
drwxr-xr-x 3 root mysql 512 2006년 5월 25일 share/
drwxr-xr-x 5 root mysql 1024 2006년 5월 25일 sql-bench/
drwxr-xr-x 2 root mysql 512 2006년 8월 17일 support-files/
drwxr-xr-x 2 root mysql 512 2006년 5월 25일 tests/
::::::::::::::::::::::::::: ls -al :::::::::::::::::::::::::::
3.7) 시스템 구동 script 작업
서버가 재구동하거나 중단 할 때 mysql 서버를 stop 시키거나 start 시키기
위해서 시스템 run level에 알맞게 script 파일을 작업합니다.
일반적으로 booting script 파일의 원본파일은
$MYSQL_INSTALL_HOME/support-files/mysql.server 입니다.
** 첨부설명)
일반적은 mysql.server 내용은 수정 없이 잘 동작 하지만 만약 정상적으로 구동
하지 않을 경우 내용을 다음과 같이 수정하면 정상적으로 동작할 수 있습니다.
수정하기전에 원본 파일을 백업해두시기 바랍니다.
::::::::::::::::::::::::::: mysql.server :::::::::::::::::::::::::::
① basedir=/usr/local/mysql
-+-------------
|
+---> '/usr/local/mysql' 추가
② pid 파일 설정 변경
if test -z "$pid_file"
then
pid_file=$datadir/`/usr/bin/hostname`.pid
----+-----------------------------
|
+--> $datadir/`hostname`.pid -> 로 변경
else
case "$pid_file" in
/* ) ;;
* ) pid_file="$datadir/$pid_file" ;;
esac
fi
::::::::::::::::::::::::::: mysql.server :::::::::::::::::::::::::::
- mysql.server 스크립트 심볼릭 링크 생성
#> cd /etc/init.d
#> ln -s $MYSQL_INSTALL_HOME/support-files/mysql.server mysql.in ; chmod +x mysql.in
#> cd /etc/rc3.d
#> ln -s $MYSQL_INSTALL_HOME/support-files/mysql.server S99mysql ; chmod +x S99mysql
#> cd /etc/rc0.d
#> ln -s $MYSQL_INSTALL_HOME/support-files/mysql.server K01mysql ; chmod +x K01mysql
3.8) Mysql Configuration File 복사 및 환경 설정 작업
#> cp $MYSQL_INSTALL_HOME/support-files/my-large.cnf /etc/my.cnf
변경 할 내용은 향후 자세하게 정리 함.
3.9) mysql 서버 구동 시키기 및 정상 동작여부 확인하기
구동시키기
#> /etc/init.d/mysql.in start
-----------------------------------------------------------
Starting MySQL
SUCCESS!
-----------------------------------------------------------
동작여부 확인
#> $MYSQL_INSTALL_HOME/bin/mysqladmin version
-----------------------------------------------------------
mysqladmin Ver 8.41 Distrib 4.1.20, for sun-solaris2.9 on sparc
Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL license
Server version 4.1.20-standard
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /tmp/mysql.sock
Uptime: 51 days 4 hours 15 min 17 sec
Threads: 6 Questions: 159317348 Slow queries: 66 Opens: 4279 Flush
tables: 5 Open tables: 256 Queries per second avg: 36.031
-----------------------------------------------------------
위와 같이 출력되면 정상
혹은 ps -ef |grep mysqld 로도 확인 가능함.
3.10) OMC 및 외부 접속 계정 등록하기
- tester 계정등록 (비밀번호 없음)
#> $MYSQL_INSTALL_HOME/bin/mysql -u root -p
Enter password:
아래과 같은 sql 명령어를 순차적으로 입력함.
① grant all privileges on *.* to tester@localhost identified by '';
② grant all privileges on *.* to tester@"%" identified by '';
③ grant all privileges on *.* to tester@"HostName" identified by '';
--------
|
+--> 장비의 Hostname을 적어줌
④ flush privileges;
설명
① - 모든 자원(DB,TABLE)에 대해서 localhost의 tester 계정에 대해서 모든권함을
줌. 암호 X
② - 모든 자원(DB,TABLE)에 대해서 %(localhost와 hostname)제외한 서버의 tester
계정에 대해서 모든권함을 줌. 암호 X
③ - 모든 자원(DB,TABLE)에 대해서 Hostname이름을 가진 서버의 tester 계정에
대해서 모든권함을 줌. 암호 X
④ - 위명령어에 대해서 서버에 반영을 합니다.
실제 실행 결과
---------------------------------------------------------------------------
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2 to server version: 4.1.20-standard
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> grant all privileges on *.* to tester@localhost identified by '';
Query OK, 0 rows affected (0.00 sec)
mysql> grant all privileges on *.* to tester@"%" identified by '';
Query OK, 0 rows affected (0.00 sec)
mysql> grant all privileges on *.* to tester@"HostName" identified by '';
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
---------------------------------------------------------------------------
4. OMP DB 생성 및 TABLE 생성 , 기타 환경작업
향후 진행하는 작업는 MYSQL CLIENT를 프로그램을 사용하여 할 수 있습니다.
편한 방법으로 진행하시기 바랍니다.
** 주의1) 테이블 생성하기 전에 반드시 DB를 먼저 생성해야 합니다.
또한 테이블 생성 할때는 사용하는 Script 파일은 특정 mysql 버젼에 따라
동작하지 않을 수도 있으므로 실행하기 전에 반드시 확인 해 봐야 합니다.
** 주의2) 각 MYSQL CLIENT 프로그램 설치하여 좀더 작업을 편하게 할수 있습니다.
설치 방법은 별도 설명을 추가 하지 않습니다.(워낙 쉬워요)
4.1) PATH에 /usr/local/mysql/bin 를 추가함.
4.2) DB 생성
mysql> create database DB_NAME;
mysql> show databases;
+------------------+
| Database |
+------------------+
| mysql |
| test |
| DB_NAME |
+------------------+
혹은
$>/usr/local/mysql/bin/mysqladmin create DB_NAME
4.3) TABLE 생성
$> cp 스키마파일 /usr/local/mysql/bin
$> mysql DB_NAME < 스키마파일
4.4) 생성된 TABLE 확인 하기
mysql> use DB_NAME;
mysql> show tables;
5. 맺음말
Mysql에 대한 설치 방법은 각 OS 마다 차이 있습니다.
물론 위에서 제시한 방법이 최선이라고는 생각하지 않습니다.
더 좋은 방법이 존재 할거라고 생각하기도 합니다.
좀더 손쉬운 방법이나 SunOS 환경이 아닌 Linux 혹은 다른 OS 설치에 대한
가이드 필요할꺼라 생각합니다.
6. 참고자료
6.1) mysql 도움말 (http://dev.mysql.com/doc/)
6.2)
-------------------------------------------------------------------------
리눅스에서 외부 접속이 되지 않는 경우
/etc/mysql/my.cnf 의 아래 부분을 주석 처리 하고
bind-address = 127.0.0.1 주석 처리
/etc/init.d 에서
mysql stop;mysql start 합니다.
댓글 없음:
댓글 쓰기