>  기사  >  데이터 베이스  >  mysql 5.7.14 설치 및 구성 코드 공유_MySQL

mysql 5.7.14 설치 및 구성 코드 공유_MySQL

WBOY
WBOY원래의
2016-10-09 08:33:431328검색

본 글은 mysql 5.7.14의 설치 및 구성 코드를 기록한 것인데, 구체적인 내용은 다음과 같다

OS: CentOS 6.6
DB: MySQL 5.7.14

1. mysql을 다운로드하세요

CD /도구

wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz

2. MySQL 바이너리 압축 해제 파일용 디렉터리를 만듭니다.

mkdir -p /opt/mysql  

[root@zw-test-db mysql]# cd /tools/ 
[root@zw-test-db tools]# ll -l mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz 
-rw-r--r-- 1 root root 642694570 Aug 29 15:02 mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz 

3. /opt/mysql 디렉토리에 압축을 푼다

[root@zw-test-db tools]# cd /opt/mysql/ 
[root@zw-test-db mysql]# tar -zxvf /tools/mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz 


[root@zw-test-db mysql]# mv mysql-5.7.14-linux-glibc2.5-x86_64/ mysql-5.7.14 
[root@zw-test-db mysql]# ll 
drwxr-xr-x 9 7161 31415 4096 Jul 12 21:03 mysql-5.7.14 

4. /usr/local에 대한 소프트 연결을 만듭니다

[root@zw-test-db mysql]# cd /usr/local/ 
[root@zw-test-db local]# ls 
bin etc games include lib lib64 libexec redis-3.2.2 sbin share src 
[root@zw-test-db local]# ln -s /opt/mysql/mysql-5.7.14 /usr/local/mysql 


[root@zw-test-db local]# ll mysql 
lrwxrwxrwx 1 root root 23 Aug 31 17:36 mysql -> /opt/mysql/mysql-5.7.14 
[root@zw-test-db local]# 

5. 사용자 생성

[root@zw-test-db /]# groupadd mysql 
[root@zw-test-db /]# useradd -M -g mysql -s /sbin/nologin -d /usr/local/mysql mysql 

-s nologin은 쉘 없이 로그인할 수 없습니다

6. 구성 파일을 기반으로 기본 디렉터리를 만듭니다.

mkdir /data/mysql 
mkdir /data/mysql/mysql_3306 
cd /data/mysql/mysql_3306/ 
mkdir data 
mkdir logs 
mkdir tmp 
chown -R mysql:mysql /data/mysql/mysql3306 

7. /etc/my.cnf 구성 파일을 생성합니다(과정 생략)

8. 초기화, 5.7 초기화 시 기본 비밀번호가 추가됩니다

[root@zw-test-db mysql]# cd /usr/local/mysql/ 
[root@zw-test-db mysql]# ./bin/mysqld --initialize 


[root@zw-test-db data]# pwd 
/data/mysql/mysql_3306/data 

### 下面是5.5, 5.6 初始化 
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql 

9. 오류 로그를 확인하고 오류가 있는지 확인

cd /data/mysql/mysql_3306/data 

[root@zw-test-db data]# vim error.log 
[root@zw-test-db data]# tail -f error.log 
2016-08-31T09:44:32.394657Z 0 [Note] Giving 0 client threads a chance to die gracefully 
2016-08-31T09:44:32.394680Z 0 [Note] Shutting down slave threads 
2016-08-31T09:44:32.394686Z 0 [Note] Forcefully disconnecting 0 remaining clients 
2016-08-31T09:44:32.415409Z 0 [Note] Binlog end 
2016-08-31T09:44:32.434217Z 0 [Note] InnoDB: FTS optimize thread exiting.
2016-08-31T09:44:32.434293Z 0 [Note] InnoDB: Starting shutdown... 
2016-08-31T09:44:32.534587Z 0 [Note] InnoDB: Dumping buffer pool(s) to /data/mysql/mysql_3306/data/ib_buffer_pool 
2016-08-31T09:44:32.534741Z 0 [Note] InnoDB: Buffer pool(s) dump completed at 160831 17:44:32 
2016-08-31T09:44:34.308784Z 0 [Note] InnoDB: Shutdown completed; log sequence number 2525428 
2016-08-31T09:44:34.308945Z 0 [Note] InnoDB: Removed temporary tablespace data file: "ibtmp1" 

10. 초기화 비밀번호 보기

[root@zw-test-db 데이터]# grep 비밀번호 error.log
2016-08-31T09:44:21.172167Z 1 [참고] root@localhost에 대한 임시 비밀번호가 생성됩니다: 8aahkRkxfm%t

비밀번호: 8aahkRkxfm%t

11 시작 스크립트 만들기

[root@zw-test-db 데이터]# cd /usr/local/mysql/
[root@zw-test-db mysql]# cp support-files/mysql.server /etc/init.d/mysql
cp: `/etc/init.d/mysql' y

덮어쓰기

12. mysql을 시작하는 세 가지 방법

방법 1:

root@zw-test-db bin]# ./mysqld_safe --user=mysql &
[1] 12455 
[root@zw-test-db bin]# 160830 15:18:01 mysqld_safe Logging to '/usr/local/mysql/data/zw-test-db.err'. 
160830 15:18:01 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data 

방법 2:

[root@zw-test-db bin]# /etc/init.d/mysqld restart
Shutting down MySQL..160830 15:18:14 mysqld_safe mysqld from pid file /usr/local/mysql/data/zw-test-db.pid ended
               [ OK ]
 
Starting MySQL.           [ OK ] 
[1]+ Done     ./mysqld_safe --user=mysql 

방법 3:

[root@zw-test-db bin]# service mysqld restart 
Shutting down MySQL..          [ OK ]
Starting MySQL.           [ OK ] 
[root@zw-test-db bin]# 

13. 환경변수 추가

echo "export PATH=$PATH:/usr/local/mysql/bin" >> /root/.bash_profile
소스 /root/.bash_profile

14. 로그인

[root@zw-test-db mysql]# mysql -u root -p 
Enter password: 
Welcome to the MySQL monitor. Commands end with ; or \g. 
Your MySQL connection id is 3 
Server version: 5.7.14-log 


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. 

root@localhost [(none)]>show databases; --提示要修改密码 
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement. 

15. 비밀번호 변경

root@localhost [(none)]>alter user user() identified by '123456'; 
Query OK, 0 rows affected (0.00 sec) 

mysql> flush privileges; 
Query OK, 0 rows affected (0.00 sec) 

root@localhost [(none)]>show databases;
+--------------------+ 
| Database   | 
+--------------------+ 
| information_schema | 
| mysql    | 
| performance_schema | 
| sys    | 
+--------------------+ 
4 rows in set (0.00 sec) 

데이터베이스를 볼 수 있습니다

16. 5.6 버전 이전에는 계정 보안 강화가 필요합니다. 5, 7 이후에는 테스트 데이터베이스가 사라졌습니다

delete from mysql.user where user!='root' or host!='localhost'; --删除非root用户,登陆主机不是localhost的账号 
flush privileges; 
alter user user() identified by '123456'; 
drop database test; 
truncate mysql.db;

이상은 이 글의 전체 내용입니다. 모든 분들의 공부에 도움이 되길 바라며, 많은 응원 부탁드립니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.