![나만의 무료 홈페이지 사이트를 가져보자 – 6.[Database] 오라클 서버 컴퓨터에 MySQL 설치하고 보안 설정하기 나만의 무료 홈페이지 사이트를 가져보자 – 6.[Database] 오라클 서버 컴퓨터에 MySQL 설치하고 보안 설정하기](https://blog.kakaocdn.net/dn/bcSd33/btsLEdTrchR/qzu5DHJrwwdlOCEz8hE7Kk/img.png)
목차
MySQL 설치
안녕하세요, 웹 사이트를 운영하려면 글 내용이나 컨텐츠들을 보관해야 하는데 그 역할을 해주는게 바로 Database예요.
우리는 그 중 간편하게 사용할 수 있는 MySQL을 오라클 서버에 설치하고 보안을 설정해볼거에요.
MySQL에 대해서
MySQL은 인기가 많은 데이터베이스 관리 시스템이에요. 빠른속도와 편의성, 안정성 등 어느 하나 빠지지 않다보니 특히 웹 개발 분야에서 엄청난 인기를 갖고 있어요.
Ubuntu에 MySQL 설치하기
*참고: 코드 오른쪽 위에 복사버튼을 누르시면 편하게 쓰실 수 있어요.
*참고: PuTTY의 Ubuntu에서 텍스트를 붙여 넣으려면 마우스 오른쪽 버튼을 쓰시면 돼요.
MySQL 데이터베이스 서버를 설치해요.
데이터베이스 서버는 웹 서버와 통신해서 저장된 컨텐츠를 주고 받아요.
Ubuntu에서 아래의 명령어로 MySQL을 쉽게 설치하세요.
sudo apt install mysql-server
MySQL 보안 설정
계속 강조해도 부족하지 않은 보안설정은 데이터베이스에도 필요해요. 아래에 있는 MySQL 보안 스크립트를 실행하세요.
sudo mysql_secure_installation
모든 설정을 수락하는게 좋지만 개인적으로 판단해서 고르셔도 돼요.
VALIDATE PASSWORD 설정
비밀번호 유효성 검사를 위한 플러그인 사용 여부에 대한 설정이에요.
보안을 위해 비밀번호를 복잡하게 구성하려면 ‘Y’, 아니면 ‘N’을 선택하세요.
‘Y’를 선택하면 비밀번호 강도 수준을 선택해야해요.
- 0 : Low (약함) : 저는 이걸 택했습니다.
- 1: Medium (보통)
- 2: Strong (강함)
Would you like to setup VALIDATE PASSWORD component?
Press y|Y for Yes, any other key for No: y
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 0
익명 사용자 제거하기
보안을 위해 익명 사용자를 제거하는게 좋아요.
‘Y’를 선택해주세요.
Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
루트 사용자의 원격 로그인 비활성화
루트 사용자의 원격 로그인을 차단할 것인지 선택하는 것인데요, 루트계정으로 원격에서 접속하려면 ‘N’로 활성화 하고 아니라면 ‘Y’로 비활성화 하면돼요.
저는 ‘Y’로 비활성화 했어요.
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
테스트 데이터베이스 제거
테스트 데이터베이스와 그 접근 권한을 제거할지에 대해 선택해요.
저에게는 필요없어서 ‘Y’를 선택해서 제거할게요.
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
권한 테이블 다시 불러오기
권한 테이블을 적용할 것인지 선택해요.
각 설정들을 바로 적용하기 위해 ‘Y’를 골라주세요.
터미널에서 “All done!” 메세지를 받았다면 설치와 보안 설정이 마무리 된거에요.
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
All done!
MySQL 서버
MySQL 서버 접속하기
MySQL 서버에 접속하는 명령어를 터미널에서 실행해요.
최상위 사용자인 root로 MySQL에 접속하겠다는 명령어 인데, 보통은 비밀번호를 입력하라고 하지만 최초 로그인이기 때문에 비밀번호를 입력하지 않아도 돼요.
이럴땐 엔터를 쳐주면 됩니다.
sudo mysql -u root -p
Enter Password: (그냥 엔터)
데이터베이스 생성
워드프레스에 연결할 데이터베이스를 생성해요.
이름은 자유롭게 설정할 수 있지만 편의를 위해 ‘wordpress’를 사용할게요.
데이터베이스에 접속하면 명령어 뒷부분에 ” ; “(세미콜론)을 꼭 붙여주세요.
-- 데이터베이스 생성: wordpress
CREATE DATABASE wordpress;
사용자 생성 – 선택사항
보안과 관련해서 권한을 부여하기 위해 데이터베이스를 사용할 사용자를 생성하는데,
특정 테이터베이스에 대한 접근 및 수정 등의 권한을 줄 수 있어요.
필수적인 부분은 아니에요. 하지만 보안은 언제나 강조하고 싶어요.
명령어를 본인의 설정과 맞춰서 수정해서 쓰세요. 특히 비밀번호는 나중에 잊지 않게 따로 저장하세요.
- 사용자 ID : user
- 비밀번호 : password
- 사용할 데이터베이스 : wordpress
CREATE : 사용자 추가 : user / password
GRANT : wordpress DB 테이블에 대한 사용자의 권한 허용
FLUSH PRIVILEGES : 권한 적용
CREATE USER 'user'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
이제 MySQL 데이터베이스 설치와 설정이 완료됐습니다.
다음엔 WordPress를 설치해서 데이터베이스와 연결하는 포스팅을 작성할게요.
감사합니다!