linux/apm

mysql 5.7.10 소스 설치

배움엔 끝이없다 2020. 7. 25. 22:03
728x90
반응형

 

# yum -y install cmake ncurses-devel bison

 

bison 설치를 안하면 cmake중에 오류발생    

 

- 계정추가

# groupadd -g 400 mysql

# useradd -u400 -g400 -d /usr/local/mysql -s /bin/false mysql

 

https://src.fedoraproject.org/lookaside/extras/community-mysql/mysql-5.7.10.tar.gz/aabc96e8628228014479f7233d076877/

mysql 설치 사이트

 

# cd /usr/local/src

# wget https://src.fedoraproject.org/lookaside/extras/community-mysql/mysql-5.7.10.tar.gz/aabc96e8628228014479f7233d076877/mysql-5.7.10.tar.gz

# tar xvfz mysql-5.7.10.tar.gz

# cd mysql-5.7.10

#  cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DMYSQL_TCP_PORT=3306 -DWITH_EXTRA_CHARSETS=all -DDEFAULT_COLLATION=utf8_general_ci -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/include/boost -DWITH_READLINE=1

 

*** cmake할때 -DWITH_READLINE=1 추가하면 한글로 데이터베이스 입력 가능

 

# make

# make install

※ 언어셋을 euckr로 설치를 원할 경우, -DDEFAULT_CHARSET=euckr

-DDEFAULT_COLLATION=euckr_korean_ci로 변경해준다.

※ 위 내용처럼 진행하였을때 make도중 41퍼센트에서 에러가 발생하여 진행이 안 되는 경우가

있다. 이는 메모리1G 가상서버에서 발생하였던 에러이며 4G서버에서는 발생하지 않았다. 메모

리부족으로 나타나는 현상으로 추측되며, 스왑메모리를 추가해줌으로써 문제를 해결하였다.

 

# dd if=/dev/zero of=/var/swapfile bs=1k count=3072000

# mkswap /var/swapfile

# swapon /var/swapfile

# swapon -s

 

 

[스왑삭제]

 

#swapoff /var/swapfile

 

#rm -fr /var/swapfile

 

#vi /etc/fstab (스왑라인 삭제)

 

 

 

# /usr/local/src/mysql-5.7.10/client/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql

 

이부분에서 에러가 생기면 ps를 확인 해보고 종료하자

 

# chown -R mysql.mysql /usr/local/mysql

# chmod 711 /usr/local/mysql

# chmod 700 /usr/local/mysql/data

# chmod 751 /usr/local/mysql/bin

# chmod 750 /usr/local/mysql/bin/*

# chmod 755 /usr/local/mysql/bin/mysql

# chmod 755 /usr/local/mysql/bin/mysqldump

 

 

boost 설치

 

# cd /usr/local/include/boost/boost_1_59_0

# ./bootstrap.sh

# ./b2 install

 

 

위 과정에서 오류가 나면 boost 디렉토리를 삭제 후 다시 설치해보자

 

git clone --recursive https://github.com/boostorg/boost.git

cd boost

git checkout develop # or whatever branch you want to use

./bootstrap.sh

./b2 headers

 

 

# cp -arp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

# cp -arp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

chmod 700 /etc/init.d/mysqld

 

# vi /etc/my.cnf

- 방금 복사한 설정파일을 열어 아래 세줄을 주석해제 후 다음과 같이 설정해준다.

basedir = /usr/local/mysql

datadir = /usr/local/mysql/data

port = 3306

 

 

 

# chkconfig --add mysqld

# chkconfig --level 3 mysqld on

 

# vi /root/.bash_profile

- 다음과 같이 기본 환경변수에 mysql경로를 지정해준다.

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:

# source /root/.bash_profile

 

그리고 방화벽을 열어준다 3306 포트

 

※ Mysql 5.7 버전에서는 이전버전과는 달리 최초 접속시 패스워드가 임의로 할당되어 바로 root로 접속할 수 없다.

※ 가장 간단한 해결방법으로 아래 경로에 임의로 설정된 패스워드로 접속하는 방법이 있다.

# vi /root/.mysql_secret

※ 다른 방법으로는 구동중인 mysql을 종료하고 safe모드로 구동한 후 다시 접근하면 패스워드 없이 접근이 가능하다. 이후 패스워드를 설정해주면 된다.

# /etc/init.d/mysqld stop

# /usr/local/mysql/bin/mysqld_safe --skip-grant-tables &

# mysql

 

mysql> use mysql;

Database changed

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

Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

 

그리고 최초 설치후 root 암호 변경 or ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement. 이런 오류 뜰 때

mysql> alter user 'root'@'localhost' identified by '비밀번호';

이 명령어로 해결

728x90
반응형
LIST

'linux > apm' 카테고리의 다른 글

apache, php, mariadb 설치 (CentOS 7, yum 설치)  (0) 2021.12.15
php zend optimizer 설치  (0) 2021.10.21
php.ini 설정(간단한 것들)  (0) 2020.08.10
php 7.0.4 소스 설치  (0) 2020.07.25
apache 2.4.7 소스 설치 하기  (0) 2020.07.25