## OS : Centos 7.2 64bit (CentOS Linux release 7.2.1511 (Core) )
## Mysql version : 5.6.30
## mysql 설치시 의존성에 걸리는 패키지를 yum 으로 설치 진행 한다.
[root@node202 src]#yum install -y wget cmake.x86_64 ncurses-devel.x86_64 gcc gcc-c++ perl-Module-Install.noarch## mysqld 가 사용할 유저와 해당 그룹을 생성 한다.
[root@node202 ~]# groupadd mysql [root@node202 ~]# useradd -M -g mysql mysql## /usr/local/src 디렉토리에 mysql 파일 다운로드 진행 및 압축을 풀고 해당 디렉토리에 진입한다.
[root@node202 src]#cd /usr/local/src [root@node202 src]#wget http://ftp.kaist.ac.kr/mysql/Downloads/MySQL-5.6/mysql-5.6.30.tar.gz [root@node202 src]# tar xvzf mysql-5.6.30.tar.gz [root@node202 src]# cd mysql-5.6.30## https://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html 참고 하여 옵션을 설정 할 수 있다
## Centos7 에서는 systemd 를 이용하여 관리 하기 위해 -DWITH_SYSTEMD을 enabel 해서 설치 하며,
## systemd 가 사용 되지 않는 os 에서는 에러가 날 수 있다.
[root@node202 src]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ -DWITH_PARTITION_STORAGE_ENGINE=1 \ -DWITH_FEDERATEDX_STORAGE_ENGINE=1 \ -DWITH_ARIA_STORAGE_ENGINE=1 \ -DWITH_XTRADB_STORAGE_ENGINE=1 \ -DMYSQL_DATADIR=/usr/local/mysql/data \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_EXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ -DSYSCONFDIR=/etc \ -DMYSQL_TCP_PORT=3306 \ -DWITH_SYSTEMD=1## make 를 이용 하여 컴파일을 통해 바이너리 파일 생성 및 바이너리 파일 설치 진행
[root@node202 src]# make && make install## mysql 에 사용될 디렉토리 권한 설정
[root@node202 src]#chown -R mysql /usr/local/mysql [root@node202 src]#chown -R mysql /usr/local/mysql/data [root@node202 src]#chgrp -R mysql /usr/local/mysql [root@node202 src]#echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile [root@node202 src]# . /etc/profile## mysql DB초기화 진행
[root@node202 src]#cd /usr/local/mysql [root@node202 mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data## PID 생성될 디렉토리 생성 및 권한 설정
[root@node202 mysql]# mkdir /var/run/mysqld [root@node202 mysql]# chown mysql /var/run/mysqld [root@node202 mysql]# chgrp mysql /var/run/mysqld## mysql 계정에 대한 기본 보안 설정 및 root password 설정을 진행 한다.
[root@node202 mysql]# mysql_secure_installation## centos7 에서는 systemd을 이용하여 데몬을 관리 하기 때문에 mysqld 에 대한 서비스를 등록 한다.
[root@node202 support-files]# cd /usr/local/mysql/support-files/ [root@node202 support-files]# cp -aR mysql.server /etc/rc.d/init.d/mysql.service [root@node202 support-files]# systemctl enable mysqld mysqld.service is not a native service, redirecting to /sbin/chkconfig. Executing /sbin/chkconfig mysqld on## 경로에 재대로 이동 되었다면 아래와 같이 확인 할 수 있다.
[root@node202 support-files]# systemctl status mysqld ● mysqld.service - LSB: start and stop MySQL Loaded: loaded (/etc/rc.d/init.d/mysqld) Active: inactive (dead) Docs: man:systemd-sysv-generator(8) [root@node202 support-files]# systemctl enable mysqld mysqld.service is not a native service, redirecting to /sbin/chkconfig. Executing /sbin/chkconfig mysqld on## systemd 를 이용하여 mysql 을 정상 적으로 실행 할 수 있다.
[root@node202 support-files]# systemctl start mysqld [root@node202 support-files]# systemctl status mysqld ● mysqld.service - LSB: start and stop MySQL Loaded: loaded (/etc/rc.d/init.d/mysqld) Active: active (running) since 토 2016-06-04 05:09:23 KST; 3min 15s ago Docs: man:systemd-sysv-generator(8) Process: 17621 ExecStart=/etc/rc.d/init.d/mysqld start (code=exited, status=0/SUCCESS) CGroup: /system.slice/mysqld.service ├─17626 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/loc... └─17739 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plu... 6월 04 05:09:22 node202 systemd[1]: Starting LSB: start and stop MySQL... 6월 04 05:09:23 node202 mysqld[17621]: Starting MySQL. SUCCESS! 6월 04 05:09:23 node202 systemd[1]: Started LSB: start and stop MySQL.## mysql client 로 접속 하여 확인 한다.
[root@node202 ~]# mysql -uroot -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 18 Server version: 5.6.30 Source distribution Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> \s; -------------- mysql Ver 14.14 Distrib 5.6.30, for Linux (x86_64) using EditLine wrapper Connection id: 18 Current database: Current user: root@localhost SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 5.6.30 Source distribution Protocol version: 10 Connection: Localhost via UNIX socket Server characterset: utf8 Db characterset: utf8 Client characterset: utf8 Conn. characterset: utf8 UNIX socket: /tmp/mysql.sock Uptime: 59 min 3 sec Threads: 1 Questions: 42 Slow queries: 0 Opens: 68 Flush tables: 1 Open tables: 61 Queries per second avg: 0.011 -------------- ERROR: No query specified
반응형
'database > mysql' 카테고리의 다른 글
pt-table-checksum,sync 를 통한 mysql replication sync 체크 및 조절 (1) | 2016.06.05 |
---|---|
Mysql 5.7 replication (Master-Slave) on Centos7 (0) | 2016.06.04 |
mysqldump 를 통한 mysql 백업,복구 (0) | 2016.05.23 |
XtraBackup install ,full backup (0) | 2016.05.14 |
FreeTDS 를 이용한 php mssql (WhatsUp 데이터 가져오기) (0) | 2016.02.10 |