블로그 이미지
redkite

카테고리

분류 전체보기 (291)
00.SI프로젝트 산출물 (0)
00.센터 운영 문서 (0)
01.DBMS ============.. (0)
01.오라클 (117)
01.MS-SQL (15)
01.MySQL (30)
01.PostgreSql (0)
01.DB튜닝 (28)
====================.. (0)
02.SERVER ==========.. (0)
02.서버-공통 (11)
02.서버-Linux (58)
02.서버-Unix (12)
02.서버-Windows (2)
====================.. (0)
03.APPLICATION =====.. (11)
====================.. (0)
04.ETC =============.. (0)
04.보안 (5)
====================.. (0)
05.개인자료 (1)
06.캠핑관련 (0)
07.OA관련 (1)
Total
Today
Yesterday

달력

« » 2025.1
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

공지사항

최근에 올라온 글

 6184902_my.txt

6184904_my(1).txt

이번 5.5 버전의 특징은 기존 버전에 비해 많my.txt 이 개선된 처리능력과 안정성 보여준다. (어느 정도의 퍼포먼스를 보여줄지 참 기대됩니다)

다양한 멀티 코어 환경에서의 안정성도 많이 높아졌으며, 이번 버전부터 InnoDB가 기본 스토리지 엔진으로 자리를 잡았다.

대부분 작은규모의 사이트들은 MyISAM 스토리엔진을 많이 이용한다. 체감속도도 빠르고 트랜젝션 사용할 일이 거의 없기때문이 아닐까?

InnoDB가 기본스토리지 엔진으로 자리 잡았다는것은 퍼포먼스 속도면에서 이전보다 많은 향상이 있지않았나 싶다. 결국 트랜젝션 처리를 이용한 보다 안정적인 서비스 운영이 가능해졌다는 결론? 써보자…백문이 불여일견

mysql 5.5.8 install

]# useradd -M -s /bin/false mysql

1단계:마이그레이션 && 컴파일 설치

기존 mysql은 깨끗히 삭제한다.(mysql stop->pid kill->삭제)

5.5 버전부터는 소스컴파일시 cmake가 필요하단다

wget http://www.cmake.org/files/v2.6/cmake-2.6.4.tar.gz

cd cmake-2.6.4

./bootstrap

make && make install

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DINSTALL_DATADIR=/usr/local/mysql/data -DWITH_INNOBASE_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=euckr -DDEFAULT_COLLATION=euckr_korean_ci -DENABLED_LOCAL_INFILE=1 -DWITH_EXTRA_CHARSETS=all -DWITH_SSL=system -DWITH_ZLIB=system

** cmake 로 설치시에 아래와 같이 옵션
-DDEFAULT_COLLATION=euckr_korean_ci \
-DDEFAULT_CHARSET=euckr \

컴파일시 에러가 발생하는 경우가 있다. 메시지를 잘 보고 필요한 패키지를 설치한다.(rm CMakeCache.txt —- cmake로 생성된 설정파일 삭제)

make && make install

컴파일 완료 (여기까진 무지쉽다. -,-)

2단계 : 바이너리 파일 받아서 설치하고자 하는 디렉토리에 풀어 넣는다.

[바이너리 버전 설치 순서]
shell> groupadd mysql
shell> useradd -g mysql mysql
shell> cd /usr/local
shell> gunzip < /path/to/mysql-VERSION-OS.tar.gz | tar xvf -
shell> ln -s full-path-to-mysql-VERSION-OS mysql
shell> cd mysql
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> scripts/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql data
shell>

bin/mysqld_safe --user=mysql &

## CNF 파일 적용 후 에러 발생 시(/usr/local/mysql/bin/mysqld: Table 'mysql.plugin' doesn't exist)

./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/fsb


* 패스워드 설정
/usr/local/mysql/bin/mysqladmin -u root password 'myadmin'
/usr/local/mysql/bin/mysqladmin -u root -h 127.0.0.1 password 'new-password'

3단계 : 환경설정및 데몬띄우기

#mysql-5.5.8]

#cp support-files/my-medium.cnf /etc/my.cnf

#vi /etc/my.cnf
innodb 환경설정
innodb_data_home_dir = /usr/local/mysql-5.5.8/data
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /usr/local/mysql-5.5.8/

innodb_buffer_pool_size = 16M
innodb_additional_mem_pool_size = 2M
innodb_log_file_size = 5M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50
[mysqld]
port = 3306
socket = /tmp/mysql.sock
basedir = /usr/local/mysql-5.5.8
max_connections = 10000
….

#scripts/mysql_install_db –user=mysql
# vi /root/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/mysql-5.5.8/bin:/usr/local/mysql5.5.8/lib
#source /root/.bash_profile
#./bin/mysqld_safe –user=mysql &
#mysqladmin -u root -p 비밀번호
#ln -s /usr/local/mysql-5.5.8/support-files/mysql.server /etc/init.d/mysqld
# cd /etc/init.d
# chkconfig –add mysql
# chkconfig –list |grep mysql

#ps aux|grep mysql (데몬 확인)

필요한 라이브러리 설치

sudo apt-get install gcc g++ libncurses5-dev libxml2-dev openssl libssl-dev curl libcurl4-openssl-dev libjpeg-dev libpng-dev libfreetype6-dev libsasl2-dev autoconf libncurses5-dev

다운로드

wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.3-m3.tar.gz/from/http://mysql.he.net/

MySQL 계정 만들기

sudo groupadd mysql
sudo useradd -g mysql mysql
sudo passwd mysql
sudo mkdir /home/mysql
sudo chown mysql:mysql /home/mysql
tar zxvf mysql-5.5.3-m3.tar.gz
cd mysql-5.5.3-m3/

MySQL 소스 컴파일

./configure --prefix=/opt/mysql --localstatedir=/opt/mysql/data --enable-assembler --enable-static --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock --without-innodb --without-isam --without-ndb-debug --without-debug --with-big-tables --with-extra-charsers=gbk,gb2312,utf8 --with-pthread --with-plugins=partition,innobase,myisammrg --with-charset=euckr --with-readline

sudo make
sudo make install

디렉토리 생성

sudo mkdir -p /data/mysql/data/
sudo mkdir -p /data/mysql/log/
sudo mkdir /var/log/mysql
sudo chown mysql:mysql /var/log/mysql
sudo chmod 750 /var/log/mysql

my.cof 복사

참조 :
http://blog.naver.com/iamfreeman/50006780132
http://blog.dasom.pe.kr/35

sudo cp /usr/local/mysql/share/mysql/my-medium.cnf /data/mysql/my.cnf

디렉토리 권한 변경

sudo chown -R mysql:mysql /usr/local/mysql
sudo chown -R mysql:mysql /data/mysql/

MySQL Database 생성

user1@ubuntu:~/mysql-5.5.3-m3$ sudo /usr/local/mysql/bin/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql/data --user=mysql
Installing MySQL system tables...
OK
Filling help tables...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/usr/local/mysql/bin/mysqladmin -u root password 'new-password'
/usr/local/mysql/bin/mysqladmin -u root -h ubuntu password 'new-password'

Alternatively you can run:
/usr/local/mysql/bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd /usr/local/mysql ; /usr/local/mysql/bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl
cd /usr/local/mysql/mysql-test ; perl mysql-test-run.pl

Please report any problems with the /usr/local/mysql/scripts/mysqlbug script!

user1@ubuntu:~/mysql-5.5.3-m3$

부팅시 자동 시작 설정

sudo cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
sudo ln -s /etc/init.d/mysqld /etc/rc2.d/S99mysql
sudo ln -s /etc/init.d/mysqld /etc/rc2.d/K99mysql
sudo ln -s /etc/init.d/mysqld /etc/rc3.d/S99mysql
sudo ln -s /etc/init.d/mysqld /etc/rc3.d/K99mysql

mysqld 수정

sudo vi /etc/init.d/mysqld

1. parse_server_arguments 주석 처리 한다.
=> #parse_server_arguments

2. $bindir/mysqld_safe 수정

#$bindir/mysqld_safe --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null 2>&1 &

기존 내용은 주석으로 하고 아래와 같이 추가 한다.

$bindir/mysqld_safe --defaults-file=/data/mysql/my.cnf 2>&1 > /dev/null &

재부팅

sudo sync
sudo sync
sudo init 6

실행확인

user1@ubuntu:~$ ps -ef | grep mysql
root 2506 1 0 12:09 pts/1 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --defaults-file=/data/mysql/my.cnf
mysql 2738 2506 0 12:09 pts/1 00:00:00 /usr/local/mysql/libexec/mysqld --defaults-file=/data/mysql/my.cnf --basedir=/usr/local/mysql --datadir=/data/mysql/data --plugin-dir=/usr/local/mysql/lib/mysql/plugin --user=mysql --log-error=/data/mysql/data/ubuntu.err --pid-file=/data/mysql/data/ubuntu.pid --socket=/usr/local/mysql/tmp/mysql.sock --port=3306
user1 2751 2104 0 12:09 pts/1 00:00:00 grep --color=auto mysql

user1@ubuntu:~$

root 암호 설정

/usr/local/mysql/bin/mysqladmin -u root password 'myadmin' -S /usr/local/mysql/tmp/mysql.sock

MySQL 외부에서 접속하기

user1@ubuntu:~$ /usr/local/mysql/bin/mysql -u root -p -S /usr/local/mysql/tmp/mysql.sock
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.5.3-m3-log Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> grant all privileges on *.* to root@'%';
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

mysql>

ssh 데몬 설치

sudo apt-get install openssh-server
sudo init 6 (재부팅)

MySQL - SQLGate로 SSH 터널링을 통해 연결하기

'01.MySQL' 카테고리의 다른 글

[MySQL]세션 타임아웃 설정  (0) 2012.12.19
[MySQL]Password 변경  (0) 2012.12.19
[MySQL]기본 – 자주 쓰는 명령어  (0) 2012.12.19
[MySQL]데이터 SPOOL 받기  (0) 2012.12.19
[MySQL]테이블 데이터만 받기  (0) 2012.12.19
Posted by redkite
, |

최근에 달린 댓글

최근에 받은 트랙백

글 보관함