안녕하세요, 반갑습니다!
Apache2 와 PHP 까지 설치를 했다면 데이터베이스인 MySql을 설치할 차례입니다.
MySql 은 어쩌구 저쩌구
오늘은 APM 설치 그 세번째, MySql 설치하기 입니다.
기본적인 설치 방법이니 가볍게 따라하실 수 있습니다.
Apache2,
PHP,
MySql
설치하기
(우분투 버전은 18.04.4 LTS 입니다.)
1. MySql 설치하기
sudo apt install mysql-server 를 입력해주세요.
그 후 비밀번호를 입력하시면, 패키지에 대한 내용이 쭈~욱 나옵니다.
그리고 설치하겠느냐는 물음에 'Y' 를 눌러서 진행할 수 있습니다.
설치는 끝났습니다.
하지만, MySql 은 데이터 베이스인 만큼 설정해줘야할 것이 있습니다.
2. root 비밀번호 설정하기
설치가 완료 됐습니다만, 이상하게 root 비밀번호를 설정하는 단계가 없습니다.
시간이 지나면서 과거와 다르게 이제 MySql 설치 하는 동안에 root 의 비밀번호를 설정하지 않기 때문이지요.
그래서 직접 root 의 비밀번호를 설정해줘야 합니다.
아래와 같이 sudo mysql_secure_installation 을 입력해주세요.
그러면 VALIDATE PASSWORD plugin 을 설치할 것인지 묻습니다만..
사실 이 플러그인은 좀 더 강화된 비밀번호를 지정하도록 강제하는 플로그인 입니다.
그래서 집에서 혼자쓰는 탓에 필요는 없지만 그래도 Database 니까 'Y' 를 눌러줍니다.
필요하지 않다면 N을 눌러 넘어가도 됩니다.
다음은 3개의 비밀번호 체계 중 어떤 것을 사용할지 선택할지 묻습니다.
각 체계는 다음과 같습니다.
0번 LOW 는 8글자 이상,
1번 MEDIUM 은 8글자 이상, 숫자, 대/소문자, 특수문자가 포함,
2번 STRONG 은 LOW + MEDIUM +@(dictionary file)
저는 무난하게 8글자 이상, 숫자, 대/소문자 사용, 특수 문자가 포함되어야 하는 '1' 번을 선택했습니다.
이제야 root 비밀번호를 설정하는 단계입니다.
여기서 비밀번호가 화면에 표시 되지 않습니다.
처음에 모르고 막 눌렀다가, 자꾸 비밀번호 틀렸다고 해서 다시 설치했었어요...ㅠ
(별표라도 표시해주지...)
아무튼, 한 글자 한 글자 잘 입력해주세요.
입력한 비밀번호를 root 비밀번호로 사용할 것인지 묻습니다.
Y 를 눌러 진행해주세요.
3. 임의의 유저 삭제 여부 설정하기
MySql 설치시, 자동으로 테스트를 목적으로 하는 사용자를 만듭니다.
여기서 Y 를 누르면, 임의의 사용자를 삭제하게 되고요.
N 을 누르면 삭제하지 않습니다.
저는 제가가 테스트 사용자이므로 Y를 눌러 삭제했습니다.
4. 원격 접속 여부 설정하기
본래 root 계정은 원격으로 데이터 베이스에 접속하면 위험이 많이 따릅니다.
그래서 localhost 로만 접속을 해야하는데, 그 여부를 묻습니다.
저는 어차피 집에서만 사용할 것이기에 'Y'를 눌러서 원격으로는 접속하지 못하게 막았습니다.
만약 외부 접속을 원하신다면 'N' 을 눌러주세요.
5. 기본 데이터베이스 사용 여부 설정하기
MySql 설치와 함께 'test' 라는 이름의 데이터베이스가 자동으로 만들어집니다.
이 데이터베이스 이름을 변경하셔서 사용하셔도 좋지만, 처음부터 만드는게 좋겠지요?
'Y'를 데이터베이스를 지웠습니다.
6. MySql 새로고침 해주기
마지막 단계입니다.
지금까지 한 모든 설정은 새로고침이 필요합니다.
Y 를 눌러 모든 설정을 완료해주세요!
설치는 이제 완전히 끝났습니다! 축하합니다!
그럼 MySql 이 잘 작동하는지 확인을 해봐야겠지요?
7. 데이터베이스 만들기
sudo mysql 을 입력해서 관리자로써 MySql 을 실행해줍니다.
설치시 자동으로 만들어지는 'test' 데이터베이스를 지웠기 때문에,
아래와 같이 새로운 데이터베이스를 만들어보겠습니다.
해당 명령어를 간단히 설명하면 다음과 같습니다.
create database <DB명>: <DB명> 이라는 database 를 만들 수 있습니다.
default : 해당 필드의 기본값을 설정할 수 있게 해줍니다.
default : 만약 필드 값이 없다면, 자동으로 설정된 기본값으로 설정됩니다.
character set utf8 : 문자 체계(인코딩)를 utf8 로 설정합니다.
8. root 이외의 사용자 계정 만들기
root 계정은 모든 걸 할 수 있는 Master 계정이 때문에,
가볍게 사용할 수 있는 별도의 계정을 만들 필요가 있습니다.
아래와 같이 create user <USERNAME> identified by '<비밀번호>'; 를 입력해서 계정을 만들어주세요.
이때 비밀번호는 설치시 선택했던 비밀번호 정책에 맞게 입력해주셔야 합니다.
만약 기억이 안나면 show variables like 'validate_password%' 로 비밀번호 정책을 확인할 수 있습니다.
9. 계정에 권한 주기
저는 포스팅을 위해 USERNAME 이라는 이름으로 계정과 blueDB 라는 이름의 database를 만들었습니다.
아래의 grant all privileges on blueDB.* to '<계정>'@'localhost' identified by '<비밀번호>' 명령어는 <계정> 에게 blueDB에 대한 모든 권한을 준다는 의미입니다.
계정을 만들었다면, 이제 해당 계정으로 접속해주세요.
mysql -u <계정명> -p 를 입력해서 접속할 수 있습니다.
10. Database 를 확인하고, 사용해보기
먼저 데이터베이스가 잘 만들어졌는지 확인을 해봐야겠지요?
show databases; 를 입력해서 확인할 수 있습니다.
그리고 해당 데이터베이스를 사용하겠다고 MySql 에 알려줘야합니다.
use <데이터베이스명>; 을 입력해서 알려주세요.
(간혹 이 과정을 잊고 바로 Select 를 하면 해당 오류가 발생할 수 있습니다.)
11. Table 을 만듭니다.
데이터 베이스를 확인했고, 사용하겠다고 MySql에 알려줬으니 이제 테이블을 만들 수 있습니다.
저는 아래와 같이 간단하게 만들었습니다.
(테이블 만드는 방법은 이미 아실 것이라 믿고 따로 설명하지는 않겠습니다.)
show tables; 명령어를 통해 테이블이 잘 만들어 졌는지 확인할 수 있습니다.
12. 데이터를 insert 하기
insert into <테이블명>(삽입될 칼럼명1, 칼럼명2, ...) value(값1, 값2, ...) 명령어로 데이터를 하나 넣어봅니다.
13. Select 로 데이터 확인하기
select * from <테이블명>; 명령어로 데이터를 출력해봅니다.
잘나오나요?! 축하합니다!
이것으로 MySql 설치를 모두 완료했습니다!
감사합니다.