mysql 4 버전 설치하기

2010.05.12 04:21

조인상 조회 수:11671

원문 : http://www.ischo.net -- 조인상 // 시스템 엔지니어

Writer : http://www.ischo.net -- ischo // System Engineer in Replubic Of Korea

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

 

본문 : http://www.ischo.net -- 조인상 //시스템 엔지니어

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

mysql부분입니다..
3. MYSQL 설치

3.1. 개요
중소 규모의 데이터 베이스에서 mysql은 가장 뛰어난 성능을 지니고 있다.
1억 만건의 데이터를 처리 할수 있으며, select에 있어서 가장 빠른 것이 특징이다.
소규 규모 데이터 베이스 처리에 있어서 mysql이 가장 적절하다. APM이라는 것처럼
아파치와 궁합이 잘 맞는다.


3.2. 데이터 베이스 최적화
[참고]
1.http://www.mysql.com/doc/C/o/Compile_and_link_options.html
2.http://www.mysql.com/doc/c/o/configure_options.html
3.http://www.mysql.com/doc/M/y/MySQL_binaries.html
4.http://www.mysql.com/doc/W/h/Which_version.html
5.http://tunelinux.pe.kr/mysql/manual/10.txt
6.http://database.sarang.net/database/mysql/tuning/optimize_mysql.html
7.http://www.phpleader.co.kr/study/studycontent.php?study2_seq=47


3.3. 소스 화일 다운로드
[다운로드]
http://www.mysql.com/downloads/mysql-4.0.html


3.4. 컴파일 하기
#소스를 푼다.
[root@ilinuxbay APM_RERIN]# tar zxvf mysql-4.0.12.tar.gz
[root@ilinuxbay APM_RERIN]# cd mysql-4.0.12
[root@ilinuxbay mysql-4.0.12]#

#쉘을 작성 해서 한번에 mysql을 설치를 한다.
[root@ilinuxbay mysql-4.0.12]# vi pgcc_mysql.sh

############# 쉘로 작성 #############
# !/bin/bash
# mysql 옵션 설정 가능한 한줄로 쓴다 혹. 옵션이 적용 안될수 있음.
./configure --prefix=/usr/local/mysql --with-client-ldflags=-all-static \
--with-mysqld-ldflags=-all-static --with-charset=euc_kr --without-debug \
--enable-assembler --with-mysqld-user=mysql


# 컴파일을 하고 설치를 한다.
make && make install

# 데이터 베이스를 생성한다.
/usr/local/mysql/bin/mysql_install_db

# mysql 그룹과 디렉토리 퍼미션을 설정을 한다.
groupadd mysql
useradd -g mysql mysql
chown -R root /usr/local/mysql
chown -R mysql /usr/local/mysql/var
chgrp -R mysql /usr/local/mysql

# 라이브러들을 등록해준다.
echo /usr/local/mysql/lib/mysql >> /etc/ld.so.conf && ldconfig

# mysqld의 경로를 지정해준다.
echo PATH=$PATH:/usr/local/mysql/bin >> /etc/profile && source /etc/profile

# /usr/local/mysql/share/mysql/mysql.server 파일을 /etc/init.d/mysqld 로 복사한다.
cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld

############# 여기까지 쉘로 작성 #############

[root@ilinuxbay mysql-4.0.12]# bash pgcc_mysql.sh # 실행 시킨다.

#쉘이 잘 작동 했는지 확인

#-1 계정
[root@ilinuxbay mysql-4.0.12]# cat /etc/passwd | grep mysql
mysql:x:502:502::/home/mysql:/bin/bash

#-2 데이터 베이스
[root@ilinuxbay mysql-4.0.12]# ls /usr/local/mysql/var/
mysql test

#-3 라이브러리
[root@ilinuxbay mysql-4.0.12]# cat /etc/ld.so.conf | grep mysql
/usr/local/mysql/lib/mysql

#-4 디렉토리 퍼미션
[root@ilinuxbay mysql-4.0.12]# ls -la /usr/local/mysql/
total 48
drwxr-xr-x 12 root mysql 4096 Jul 23 15:14 .
drwxr-xr-x 16 root root 4096 Jul 23 15:14 ..
drwxr-xr-x 2 root mysql 4096 Jul 23 15:14 bin
drwxr-xr-x 3 root mysql 4096 Jul 23 15:14 include
drwxr-xr-x 2 root mysql 4096 Jul 23 15:14 info
drwxr-xr-x 3 root mysql 4096 Jul 23 15:14 lib
drwxr-xr-x 2 root mysql 4096 Jul 23 15:14 libexec
drwxr-xr-x 3 root mysql 4096 Jul 23 15:14 man
drwxr-xr-x 6 root mysql 4096 Jul 23 15:14 mysql-test
drwxr-xr-x 3 root mysql 4096 Jul 23 15:14 share
drwxr-xr-x 7 root mysql 4096 Jul 23 15:14 sql-bench
drwx------ 4 mysql mysql 4096 Jul 23 15:14 var

#mysql 자동화 스크립트 및 부팅시 자동 시작 설정
[root@ilinuxbay support-files]# cd /etc/rc.d/init.d/

# /etc/rc.d/init.d/mysqld 에 내용 추가
==> $bindir/mysqld_safe --datadir=$datadir --pid-file=$pid_file --language=korean &

# /etc/rc.d/init.d/mysqld 에 내용 추가
# max_connections=500 여기서 주의 점은 최대 화일 열수 있는 개수 설정이다.
# 그 메모리나 데이터 베이스 양에 따라서 적절히 조절을 해주어야 한다.

#############################################################################
# $bindir/mysqld_safe \ #
# --log-update=update.log -O max_connections=500 -O max_connect_error=999999999 \ #
# --user=$mysql_daemon_user --datadir=$datadir --pid-file=$pid_file --log=$log_file & #
#############################################################################

#화일을 생성한 후에 퍼미션을 실행 퍼미션으로 조정한다.
[root@ilinuxbay init.d]# chmod +x mysqld

# 설치 후에 시스템에 맞추어서 시스템 최적화 옵션 화일을 /etc/ 로 복사한다.

# 다음은 128메모리를 사용하는 경우이다.

[root@ilinuxbay init.d]# cd /usr/local/src/source/mysql-4.0.12/support-files
[root@ilinuxbay support-files]# cp my-medium.cnf /etc/my.cnf

# 512 M 이면
[root@ilinuxbay support-files]# cp my-large.cnf /etc/my.cnf

# 1G이면
[root@ilinuxbay support-files]# cp my-huge.cnf /etc/my.cnf


# 리부팅후 자동으로 시작할수 있게 초기화 스크립트에 링크를 걸어 준다.
[root@ilinuxbay init.d]# cd /etc/rc3.d/
[root@ilinuxbay rc3.d]# ln -s ../init.d/mysqld S98mysqld
[root@ilinuxbay rc3.d]# cd /etc/rc5.d/
[root@ilinuxbay rc5.d]# ln -s ../init.d/mysqld S98mysqld

#데이터 베이스를 시작한다.
[root@ilinuxbay init.d]# ./mysqld start
[root@ilinuxbay init.d]# Starting mysqld daemon with databases from
/usr/local/mysql/var

# ntsysv에 mysqld를 추가해준다
[root@ilinuxbay init.d]# chkconfig --add mysqld

# mysqld 서비스 데몬 확인
[root@ilinuxbay init.d]# ntsysv

#프로세스를 확인해서 제대로 프로세스가 뜨는지 확인 한다.
[root@ilinuxbay init.d]# pstree | grep mysql
|-mysqld_safe---mysqld---mysqld---8*[mysqld]

#mysql 패스워드 설정
proot@ilinuxbay /bin]# cd /usr/local/mysql/bin
[root@ilinuxbay /bin]# ./mysqladmin -u root password '패스워드'

# Exception : 패스워드 분실시 다음과 같이 한다
[root@ilinuxbay /bin]# cd /usr/local/mysql/bin
[root@ilinuxbay /bin]# killall mysqld
[root@ilinuxbay /bin]# ./safe_mysqld --skip-grant &
[root@ilinuxbay /bin]# mysql
mysql> USE mysql;
mysql> UPDATE user SET Password=PASSWORD('패스워드') WHERE user='root';
mysql> FLUSH PRIVILEGES;
번호 제목 글쓴이 날짜 조회 수
공지 [공지] 게시자료 열람자유. 불펌금지입니다. 조인상 2010.12.07 30768
64 kill 명령어로 줄수 있는 interrupt list ischo 2012.08.17 12530
63 apache log rotate 시키기 ischo 2012.08.14 17151
62 DNS 기초에서 보안까지 조인상 2012.07.26 11423
61 아파치. 톰캣 연동 (apache+tomcat by mod_jk) ischo 2012.04.18 17336
60 SELINUX 비활성화하기 ischo 2012.04.06 15867
59 CentOS 6 에서 XDMCP 활성화 방법 ischo 2012.02.25 15235
58 리눅스 커널이 64bit 인지 확인방법 ischo 2012.02.24 34988
57 복수서버들의 서비스포트 응답여부를 확인하여 메일로 보내주는 스크립트 file ischo 2012.01.17 14656
56 리눅스에서 디스크 덤프하기 ischo 2011.12.22 21901
55 telnet 으로 메일 보내기 ischo 2011.12.07 14394
54 웹서버 포트 무응답시 메일 보내주는 스크립트 file ischo 2011.11.30 11018
53 Shell 스크립트의 내장변수 + exit code ischo 2011.11.16 16834
52 프로세스 생사여부 검사후 메일보내는 쉘스크립트 file ischo 2011.11.10 13552
51 TCP/IP Flow file ischo 2011.10.19 11584
50 ssh 접속시 로그인 속도가 느릴경우 속도 향상법 ischo 2011.08.30 23008
49 백그라운드로 프로세스 실행시키기 ischo 2011.08.25 14814
48 TCP TIME_WAIT이 많이 발생하여 문제가 되는 경우 ischo 2011.08.18 28349
47 리눅스 mdadm 을 이용한 S/W RAID 구성 [1] ischo 2011.07.20 25449
46 리눅스 Services 설명 ischo 2011.07.08 23645
45 아파치 SSL 적용된 경우 startup 시에 SSL 패스워드 자동입력시키기 ischo 2011.06.02 24256
서버에 요청 중입니다. 잠시만 기다려 주십시오...