ec2 - 보안그룹 - 인바운드 규칙 - 규칙 추가 - 3306, anywareipv4

 

1. root 계정 초기 암호 보기 grep "temporary password" /var/log/mysqld.log ⇒초기 암호 제공
2. 초기암호로 로그인
3. root 계정 암호변경하기

 

대소문자 특수문자 포함해서 8글자로 비밀번호 변경 

비밀번호 잃어버리면 끝임 잘 적어두길 바람..

 

변경후 확인 

 

- 포트번호 확인 

show globbal variables like 'PORT'; 

 

- host 보기 

select host, user from mysql.user;

localhost 라고 되어있는host는 다른곳에서 접속 못함

- 원격유저 만들기
create user 'hr'@'%' identified by 'Mydb1234!';

 직접 만들때 local 에서만 접속할때 만들고싶으면 %자리에 local 넣어주면 됨 즉 %는 0.0.0.0과 같음
 identified by 'Mydb1234!';는 비번 만들기 

-권한부여
grant all privileges on *.* to 'hr'@'%' 


all privileges on -- 이부분에 권한의 영역
*.* -- DB의 이름 ( *.* 는 생성되는 모든)
'hr'@'%'  -- 계정 (원격에서 관리자로 로그인할수있게 하려면 이부분에 root 넣으면됨)


이 과정을 잘 거쳤다면 

이런식으로 잘 된걸 볼수있다.

-db 보기 
show databases;

이미데이터베이스가 있지만 이 4개는 쓸수 없음 저 4개는 데이터딕셔너리이기 때문 

우리가 쓰려고 있는게 아니라 이미 데이터가 있음 근데 사용자 데이터가 아니라 db 자체의 데이터가 담겨져있기때문

 

 

-grante( 권한부여 해준 명령어) 를 영구저장하는것처럼 권한 저장(부여) 해주기

flush privileges;

 

-db 만들기 

create database hrdb;

 

 

다시 show 명령어를 이용해서 보면 늘어나있음 

 

-지금부터 어느 db에서 작업할건지 지정하기 

use hrdb;

 

-새 테이블 만들기 

길어서 사진으로 대체함

-table 보기 

show tables; 

 

테이블 생성후 show tables; 명령어를 입력하면 만든 table이 보임 

참고 :

하나의 데이터 베이스에는 이름이 동일한 테이블을 허용하지 않음

 

 

 

sql에서 저렇게 ec2 퍼블릭 아이피 입력하고 , 유저네임 입력후에 테스트 커넥션에 비번넣으면 생성완료 

 

sql에서 지정은 두번클릭 (두꺼워짐)

 

sql에서 데이터 넣기  test

 

그리고 다시 터미널로 와서 보면

다른 프로그램에서 했는데도 잘 설정되있는걸 볼수있음

 

 

그리고 myweb01 인스턴스에서 원격 접속 을 해서 업데이트를 해볼건데 

mysql -h3.36.14.135 -uhr -p  

입력후 비번입력하고 

use hrdb; (지정하기)

show tables; 하면 잘 들어온것을 볼수있다 

 

 

 

myvpc 안 현상황 

 

그림이 영.. ㅎ

 

대충 DB를 쓰지않고 하나의 데이터를 여러 인스턴스에서 수정하면 계속 수정본(사본)이 나오지만 

DB를 이용해 DB에서 접속을 하고 자체적으로 수정이나 편집을 하면 훨씬 효율적이여서 우리는 바로 이 환경을 구축해본것이다.

db를 터미널을 이용해 직접들어가는게 local web01은 db가 없는데 원격접속해서 편집하고 업데이트한거임 

 

 

 

 

 

 

 

글을 마치며 ..

mysql을 사용하는것도 처음이고 DB 자체의 개념과 원리를 잘 알지 못했는데 db의 편의성과 직접 환경세팅및

구성해보면서 

개념을 확실히 알게된거같아서 재미있었음 터미널 사용하는게 조금 어렵기도 하고 처음보는 명령어들이였는데 

직접 입력하면서 구성해보니까 점점 손에 익는거같음 

+ Recent posts