RSS구독하기:SUBSCRIBE TO RSS FEED
즐겨찾기추가:ADD FAVORITE
글쓰기:POST
관리자:ADMINISTRATOR


설치 환경 및 버전

OS

Fedora12

Apache2.2

httpd-2.2.13-4.fc12.i686

php 5.2.12

소스설치 5.2.12

mysql

5.0.90

 

 

mysql 5.x 사용하면서 unicorn보드를 사용하려고 하면서
unicorn
보드가 UTF8을 미지원하면서
euc-kr로 운영할 mysql
하나더 설치할일이 생겨서 설치하게 되었습니다

 

기존에 mysql RPM으로 설치되어있었고 소스설치로
하나더 설치 할것입니다
모든작업은 root로 할 것 입니다

 

먼저 /etc/my.cnf 파일을 옴겨 높습니다 저는 rpm mysql 이 설치되어있기에 /var/lib/mysql 로 옴겨놓겠습니다

# mv /etc/my.cnf /var/lib/mysql/

 

다운받고 압축풀기

# wget ftp://mirror.khlug.org/mysql/Downloads/MySQL-5.0/mysql-5.0.90.tar.gz

# tar zxvf mysql-5.0.90.tar.gz

 

디렉토리로 이동후

# ./configure --prefix=/usr/local/mysql2 --localstatedir=/usr/local/mysql2/data --with-charset=euckr --enable-assembler --without-debug --enable-thread-safe-client --with-mysqld-user="mysql2" --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --with-readline --sysconfdir=/usr/local/mysql2

# make

# make install

 

mysql 데이터베이스 생성

# /usr/local/mysql2/bin/mysql_install_db

 

공유라이브러리 설정파일에 mysql라이브러리 경로를 추가

/etc/ld.so.conf  파일에 아래내용을 추가한후

/usr/local/mysql2/lib

 

# ldconfig    <-- 실행

 

 

유저를 생성합니다

# useradd -M -d /usr/local/mysql2 -s /sbin/nologin mysql2

 

 

소유권을 지정합니다

# chown -R root:mysql2 /usr/local/mysql2/

# chown -R mysql2:mysql2 /usr/local/mysql2/data/

 

mysql에서 사용할 환경 설정파일을 복사 합니다 시스템에 따라 다르니 아래를 참조합니다

my-huge.cnf       1GB 이상 메모리

my-large.cnf       512MB ~ 1GB

my-medium.cnf  128MB ~ 256MB

my-small.cnf      64MB 이하

테스트 시스템은 메모리가 683MB임으로 my-large.cnf 를 이용합니다

 

my2.cnt을 복사 합니다

# cp /usr/local/mysql2/share/mysql/my-large.cnf /usr/local/mysql2/my.cnf

 

그리고 my.cnt 을 열어서 포트를 변경합니다

저는 3306에서 3307 로 변경하고 socket도 변경하겠습니다

 

[client]
#password = your_password
port = 3307
socket = /tmp/mysql2.sock

[mysqld]
port = 3307
socket = /tmp/mysql2.sock

 

저장하고 나와서

 

mysql 데몬을 띄웁니다

# /usr/local/mysql2/bin/mysqld_safe &

 

ps -ef | grep mysql  로 확인해보면 아래와 같이 mysql2 계정으로 떠잇는걸 확인할수 있습니다

root      3945     1  0 05:01 pts/1    00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --pid-file=/var/run/mysqld/mysqld.pid --basedir=/usr --user=mysql

mysql     4118  3945  0 05:01 pts/1    00:00:00 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --log-error=/var/lib/mysql/taerang.err --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock --port=3306

mysql2    4175  4152  0 05:05 pts/0    00:00:00 /usr/local/mysql2/libexec/mysqld --basedir=/usr/local/mysql2 --datadir=/usr/local/mysql2/data --user=mysql2 --pid-file=/usr/local/mysql2/data/taerang.pid --skip-external-locking --port=3307 --socket=/tmp/mysql2.sock

 

 

root 비밀번호를 지정하겠습니다

# /usr/local/mysql2/bin/mysql mysql

mysql> update user set password=password('밀번호') where user='root';

mysql> flush privileges;

 

 

원래 목적인 euc-kr mysql을 설치했으니 케리터셋을 확인해보면

mysql> show variables like "c%";


euc-kr이 제대로 설정되어있는걸 확인할수 있네요

 

기존에 phpmyadmin 을 사용하고 있다면 하나도 설치해서
포트번호를 달리해도 상관없고


기존의 phpmyadmin에 추가하여 사용할수 있습니다
아래는 추가하여 사용하는 방법입니다

중요한건 이렇게 사용하려면 auth_type cookie을 사용해야합니다

 

 

첫번재 에 맨윗줄에 $i++;  이 없으니 써주고 $cfg['Servers'][$i]['verbose'] = '이름지정';  이부분을 추가합니다

 

 

$i++;

/* Authentication type */

$cfg['Servers'][$i]['verbose'] = 'mysql5-1';

$cfg['Servers'][$i]['auth_type'] = 'cookie';

/* Server parameters */

$cfg['Servers'][$i]['host'] = 'localhost';

$cfg['Servers'][$i]['connect_type'] = 'tcp';

$cfg['Servers'][$i]['compress'] = false;

/* Select mysqli if your server has it */

$cfg['Servers'][$i]['extension'] = 'mysql';

 

  

두번째 새로설치한부분인데 포트번호 다르게 지정해주시고
verbose
이름달리지정해주세요

socket 도 달리해주셔야 합니다


  $i++;

  $cfg['Servers'][$i]['verbose'] = 'mysql5-2';    <-구분하는 이름

  $cfg['Servers'][$i]['host'] = 'localhost';

  $cfg['Servers'][$i]['port'] = '3307';

  $cfg['Servers'][$i]['socket'] = '/tmp/mysql2.sock';

  $cfg['Servers'][$i]['connect_type'] = 'socket';

  $cfg['Servers'][$i]['extension'] = 'mysql';

  $cfg['Servers'][$i]['auth_type'] = 'cookie';

  $cfg['Servers'][$i]['AllowNoPassword'] = true;

 

 

저장하고 띄워보면 아래와 같이 서버를 선택할수 있습니다



만약 소스로 기존에 설치된 상태에서 또하나 설치하는
거라면 /etc/my.cnf 파일을 꼭
기존 mysql data
디렉토리로 옴겨 놓으시기 바랍니다


/etc
my.cnf파일이 있으면 전역적으로 적용되기에 여러
 mysql 운영하려면 꼭 옴겨주시기 바랍니다


 포스트 다운




페도라 한국 사용자 모임

페도라 한국 사용자 모임 태랑의 포스팅글입니다
  파이어폭스에 최적화 되어있습니다


이 포스트가 유용하셨다면 구독하세요 Add to Google

블로그코리아에 블UP하기

크리에이티브 커먼즈 라이센스
Creative Commons License
http://commit.co.kr/trackback/88
태랑:Extreme Performance DBA 를 꿈꾼다
Extreme Performance DBA 를 꿈꾼다



전체보기 (100)
Solaris (15)
Linux (42)
DATABASE (27)
Virtualization (0)
Enterprise Manager (0)
JAVA / C / 그외 개발언어 (2)
넓은 세상의 이야기들 (14)

Tag List

Creative Commons License

이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

7 명이 RSS를 구독하고 있습니다.