개발

리눅스 mysql(5.5.9) 설치 방법

snow-line 2020. 8. 8. 09:03
반응형

리눅스에 mysql을 설치할 때 버전마다 설치 방법이 다릅니다.

이 포스팅을 참고하면서 mysql을 설치할 때 꼭 mysql 5.5.9(https://downloads.mysql.com/archives/community/) 버전을 다운받아서 진행해야 문제가 발생하지 않습니다.

 

* 리눅스는 centos 7 버전에 설치를 진행합니다.

 

1. mysql 다운로드

 - mysql 사이트에서 (https://downloads.mysql.com/archives/community/) tar.gz 파일로 5.5.9 버전을 다운받습니다.

 - 다운받을 파일을 리눅스 서버의 /usr/local/src 폴더에 업로드 합니다.

2. 미리 설치 되어 있는 mysql 삭제

 - yum으로 미리 설치되어 있을 수 있는 mysql을 삭제해야 합니다.

 rpm -qa | grep mysql

 yum remove mysql mysql-*

 rm -rf /etc/my.cnf
 rm -rf /var/log/mysql
 rm -rf /var/lib/mysql

3. 설치에 필요한 패키지를 설치합니다.

yum -y install gcc readline-devel gcc-c++ ncurses-devel libxml2-devel openssl-devel bzip2-devel libjpeg-devel libpng-devel gmp* freetype-devel rsync rdate
yum -y install gcc gcc-c++ wget bzip2-devel pkgconfig openssl-devel make man nasm gmp gdbm-devel readline-devel compat-readline43 ncurses-devel db4-devel automake* autoconf* libaio-devel libaio valgrind-devel cmake bison

4. 설치를 진행합니다.

- mysql을 다운로드 한 폴더로 이동합니다.

cd /usr/local/src

- 압축을 해제합니다.

tar zxvf mysql-5.5.9.tar.gz

- 압축 해제한 폴더로 이동합니다.

cd mysql-5.5.9

- cmake를 진행합니다.

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -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=/usr/local/mysql/mysql.socket -DMYSQL_TCP_PORT=3306

make

make install

make clean

- 폴더를 이동 한 후 mysql 계정을 생성하고 설정 파일을 복사합니다.

cd /usr/local/

groupadd mysql

useradd -g mysql mysql

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

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

cd /usr/local/mysql/support-files/

cp mysql.server /etc/init.d/mysqld

chmod 755 /etc/init.d/mysqld

cp my-huge.cnf /etc/my.cnf

5. mysql 설정을 변경합니다.

vi /etc/my.cnf

thread_concurrency = 8 밑에 max_connections = 3000 추가

vi /etc/init.d/mysqld 

 * basedir, datadir 찾아서 변경한다.
   
basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

6. 프로파일에 값을 추가합니다.

vi /etc/profile

export MYSQL_HONE=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin

source /etc/profile

7. mysql 을 실행합니다.

service mysqld start

8. mysql 계정으로 로그인합니다.

su - mysql 

9. mysql에 새로운 사용자를 생성합니다.

/usr/local/mysql/bin/mysql -u root -p

use mysql;

insert  into user (Host, User, Password, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv, Index_priv, Alter_priv, Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv, Execute_priv, Repl_slave_priv, Repl_client_priv, Create_view_priv, Show_view_priv, Create_routine_priv, Alter_routine_priv, Create_user_priv, ssl_type, ssl_cipher, x509_issuer, x509_subject, max_questions, max_updates, max_connections, max_user_connections ) values ( '%', 'test', password('test'), 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', '', '', '', '', 0, 0, 0, 0);

FLUSH PRIVILEGES;

10. root 계정에 대한 익명 접근 권한을 삭제합니다.

# /usr/local/mysql/bin/mysql -u root -p
# Enter password:
# mysql> USE mysql; 
# mysql> delete from user where password = ""; 
# mysql> exit
# /usr/local/mysql/bin/mysqladmin -u root -p reload 
# Enter password:

mysql 설치가 끝났습니다.

 

생성한 계정(test)으로 접속을 해서 정상적으로 mysql 설치가 완료되었는지 확인하면 됩니다.

반응형

'개발' 카테고리의 다른 글

JVM 메모리 구조 및 JVM 튜닝  (0) 2020.08.13
Centos7 jdk 1.8 설치  (0) 2020.08.10
AngularJs 보안 가이드  (0) 2020.07.28
AngularJs 성능 개선 가이드  (0) 2020.07.28
Redis 튜닝하기  (0) 2020.07.27