# yum -y install cmake ncurses-devel bison
bison 설치를 안하면 cmake중에 오류발생
- 계정추가
# groupadd -g 400 mysql
# useradd -u400 -g400 -d /usr/local/mysql -s /bin/false mysql
mysql 설치 사이트
# cd /usr/local/src
# 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 '비밀번호';
이 명령어로 해결
'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 |