11. Mysql 5.7.24 설치 및 설정하기
- OLIDANG/Chapter 1.
- 2018. 12. 11. 14:25
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- RSS 방지선 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
sudo apt-cache policy mysql-server
sudo apt-cache policy mysql-server-5.7
## 네이버 비즈니스 플랫폼은 Mysql 5.7.19 를 안정화버전으로 제공하고 있으며,
## 아마존 라이트세일은 Mysql 5.7.23 을 안정화버전으로 제공하고 있다.
## 우리는 5.7.24 로 설치한다.
## 우분투 패키지 업데이트를 한번 해준다.
sudo apt update
## Mysql 5.7 버전을 설치하도록 한다.
## mysql-server 와 mysql-server-5.7 은 같은 것이긴 하나,
## 추후 업데이트나 버전관리 용이성을 위하여,
## mysql-server 패키지로 설치하도록 한다.
## 반드시 root 계정으로 설치해주도록 한다. (왠지 그래야 한다)
su -
sudo apt install mysql-server
## 중간에 관련된 패키지를 모두 설치할거냐고 묻는 창이 나오면 [Y/N]
## Enter 키 또는 Y 를 입력한 뒤 Enter 키를 입력한다.
## 그리고 중간에 분홍색 창이 뜨면서 Mysql 기본암호를 설정하라고 나온다.
## 암호를 잊으면 변경하기 까다로우니 반드시, 제대로 입력하도록 한다.
## 설치되었는지 확인
sudo /etc/init.d/mysql status
sudo netstat -ntlp | grep mysqld
## 설치되어 있는 데이터베이스를 확인
sudo mysql -uroot -p -e'show databases'
## 설치시에 입력한 Mysql 비밀번호 입력하여 확인
## 테이블들을 확인해보자
sudo mysql -uroot -p
use mysql
show tables;
## Mysql 서비스 시작 명령어
service mysql start
## Mysql 서비스 종료 명령어
service mysql stop
## Mysql 한글 설정
## Mysql 은 기본 언어셋이 latin1 로 되어있음.
## latin1 로 되어있을 경우 한글 입력시 깨지는 문제가 발생함.
## 그렇기 때문에, 설치 후 반드시 한글 설정을 해주어야 함.
## 한글 설정에 사용할 파일은 mtsql.cnf 이다.
cd /etc/mysql/conf.d
ls
sudo vi mysql.cnf
## 처음에는 mysql.cnf 파일을 열어보면 아래와 같다.
## 내용을 모두 지운뒤, 새로 작성하도록 한다.
## 새로 mysql.cnf 에 입력되는 내용은 아래와 같다.
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
character-set-server=utf8
collation-server=utf8_general_ci
init_connect = set collation_connection = utf8_general_ci
init_connect = set names utf8
[mysql]
default-character-set=utf8
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
default-character-set=utf8
[client]
default-character-set=utf8
[mysqldump]
default-character-set=utf8
## mysql.cnf 파일을 정상적으로 수정하였다면, mysql 을 재시작한다.
sudo /etc/init.d/mysql restart
## 한글 설정이 반영되었는지 확인
## Server characterset, Db characterset, Client characterset, Conn. characterset 이 utf8 로
## 변경되었다면 설정이 반영된 것임.
mysql -uroot -p
status
## 테스트로 사용할 database 를 생성해준다
mysql -uroot -p
create databse test_pjh;
show databases;
## 계정을 만들 것이다.
## mysql5.7 이상은 create user 구문을 사용해서 계정을 만든다.
## -- 사용자 계정 생성
## create user '아이디'@호스트 identified by '비밀번호';
## -- 로컬 접속계정 생성
## create user '아이디'@localhost identified by '비밀번호';
## -- 모든 IP로 접속가능한 계정 생성
## create user '아이디'@'%' identified by '비밀번호';
create user 'test_user'@'%' identified by 'test_password';
## 생성한 계정에 권한을 부여한다.
## -- 사용자 권한 설정
## GRANT ALL PRIVILEGES ON 데이터베이스명.테이블명 TO '아이디'@'호스트' IDENTIFIED BY '비밀번호';
## -- 모든 데이터베이스, 모든 테이블, 모든 IP 접속 허용
## GRANT ALL PRIVILEGES ON *.* TO '아이디'@'%' IDENTIFIED BY '비밀번호';
## -- 특정 데이터베이스, 모든 테이블 모든 IP 접속 허용
## -- ex) test 라는 데이터베에스의 모든 테이블, 모든 IP 접속하도록 권한부여
## GRANT ALL PRIVILEGES ON test.* TO '아이디'@'%' IDENTIFIED BY '비밀번호';
## -- 모든 데이터베이스, 모든 테이블, 특정 대역 IP 접속 허용
## -- ex) 192.168 로 시작하는 IP에 대해 접속하도록 권한 부여
## GRANT ALL PRIVILEGES ON *.* TO '아이디'@'192.168.%' IDENTIFIED BY '비밀번호';
## -- 모든 데이터베이스, 모든 테이블, 특정 IP만 접속 허용
## -- ex) 192.168.22.33 IP에 대해 접속하도록 권한 부여
## GRANT ALL PRIVILEGES ON *.* TO '아이디'@'192.168.22.33' IDENTIFIED BY '비밀번호';
## -- 모든 데이터베이스, 모든 테이블, 로컬에서만
## GRANT ALL PRIVILEGES ON *.* TO '아이디'@localhost IDENTIFIED BY '비밀번호';
grant all privileges on test_pjh.* to ‘test_user’@’%’ identified by ‘test_password’;
## 변경된 권한을 시스템에 반영한다 (권한 적용)
flush privileges;
## 생성한 사용자 계정을 조회해보자.
## 먼저 mysql 데이터베이스를 선택하여 user 테이블을 조회한다.
## 조회결과를 보면 방금 생성한 계정과 접속 가능한 host 가 나온다.
use mysql;
select host, user from user;
## 외부에서 mysql 에 접속이 가능하도록 하기
## 아마존 라이트세일 페이지에서
## 해당인스턴스 메뉴 -> 관리 -> 네트워킹 -> 방화벽 부분을 수정해준다.
## MySQL/Aurora 부분을 추가해준뒤, 저장해준다.
## LISTEN IP 대역을 변경해준다.
cd /etc/mysql/mysql.conf.d
ls -al
sudo vi mysqld.cnf
## bind-address 부분을 찾아가자
## 해당부분을 주석처리해주자.
## 또는 bind-address = 0.0.0.0 으로 해줘도 같은 설정이다.
## mysql 을 재시작하자.
## 서버쪽 mysql 설정은 일단 완료되었다.
sudo service mysql restart
## mysql 을 좀더 편하게 사용하기 위하여 GUI 툴인 phpmyadmin 을 사용하도록 해보자.
## phpmyadmin 을 mysql 서버에다가 설치하여 사용해도 되지만
## 이렇게 되면, phpmyadmin 페이지가 웹서버로 등록되어, 공개되는 꼴이니
## 이것은 하고 싶지가 않다.
## 그러면 어떻게 해야하나, 개인 개발용 컴퓨터에 아파치를 통하여 웹서버를 생성한 후
## 그곳에 phpmyadmin 을 설치하여 mysql 서버에 원격으로 접속하여 사용하도록 할 것이다.
## 다음게시물을 참고하자.
'OLIDANG > Chapter 1.' 카테고리의 다른 글
15. xampp 에 phalcon 설치하기 (Windows 10) (0) | 2019.02.26 |
---|---|
12. xampp 를 통한 phpmyadmin 사용하기 (Windows 10) (0) | 2018.12.11 |