※ 이 글에서 다룬 기반기술, 프론트엔드, 백엔드, 데브옵스 등 풀스택 개발 지식은 모두 한화시스템 Beyond SW Camp 12기에서 배운 내용을 복습한 것입니다.
[리눅스] mariaDB - DB실습 (환경 구축 및 WAS 접속)
※ 이 글에서 다룬 기반기술, 프론트엔드, 백엔드, 데브옵스 등 풀스택 개발 지식은 모두 한화시스템 Beyond SW Camp 12기에서 배운 내용을 복습한 것입니다. 이 글은 아래에 두 과정이 끝난 후에
taeh00n.tistory.com
위의 게시글을 보았다면 리눅스 환경에서 가상 컴퓨터를 생성해 IP주소를 설정한 후 mariaDB 설정까지 하는 방법을 알 것이다.
리눅스 환경에서 mariaDB를 사용하게 되면 모든 작업을 명령어로 해야하니 초보자는 어려울 것이고, 테이블을 직관적으로 확인하기도 어려울 것이다. 그래서 더 편리하고 직관적인 관리를 위해 MySQL Workbench 같은 GUI 클라이언트를 사용하는 방법을 알아보겠다.
1. DB 보안 설정
mysql_secure_installation
위의 명령어를 사용해 루트 계정 비밀번호를 설정하는 등 보안 설정을 하는 명령어이다.
2. 데이터베이스 생성
mariadb -u root -p
[비밀번호]
mariaDB를 루트 계정으로 로그인해보겠다. 이때의 비밀번호는 1번 과정에서 설정한 비밀번호이다.
CREATE DATABASE cth;
cth라는 이름의 데이터베이스를 생성하였다.
데이터베이스 운영체제의 파일 시스템을 이용해 데이터를 '파일' 형태로 저장한 것이다.
/var/lib/mysql이라는 디렉터리에 cth라는 아까 내가 생성한 데이터베이스 폴더가 있는 것을 확인할 수 있다.
데이터베이스에 들어가면 DB 파일이 있는 것을 확인할 수 있다.
3. MySQL Workbench 설치 후 실행
MySQL Workbench를 기본값으로 모두 설치한 후 실행한 초기화면이다.
내가 생성한 mariaDB 서버에 루트 계정으로 접속하는 것을 시도해보겠다.
루트 계정이 접속 거부되었다.
MariaDB와 MySQL은 보안 강화를 위해 기본적으로 루트 계정의 원격 접속을 차단하는 설정을 사용한다.
아마 판단은 내가 IP주소를 적을 때 내 컴퓨터를 가르키는 bind 주소가 아닌 다른 IP주소여서 원격 접속이라 판단하는 것 같다.
그러면 데이터베이스를 사용하려면 원격 접속용 사용자를 추가해보겠다.
mariadb -u root -p
CREATE USER '[원격접속용ID]'@'%' IDENTIFIED BY '[비밀번호]';
GRANT ALL PRIVILEGES ON [권한 줄 DB 이름].* TO '[원격접속용ID]'@'%';
FLUSH PRIVILEGES
cth 데이터베이스의 모든 권한을 cth 계정으로 접속하는 사람에게 주는 것으로 설정하였다.
원격 접속용 계정으로 입력 후 연결이 되는지 테스트 해보겠다.
비밀번호 입력 후 Continue Anyway를 눌러보겠다.
원격 접속용 계정이 등록 완료되었고 mariaDB에서 생성한 DB 서버를 사용할 준비가 되었다.
4. MySQL Workbench 사용
원격 접속용 계정으로 접속을 해보면 위와 같은 창이 뜰 것이다.
첫 번째 표시는 작성된 전체 SQL문을 실행시키는 것이고, 두 번째는 해당 줄만 실행시키는 것이다.
SQL문을 실행해보니 실행이 안된 것을 볼 수 있다.
그 이유는 아까 위에서 DB는 파일이라고 설명을 했다. 그런데 내가 무슨 파일을 쓸 건지 선택을 하지 않았기에 뜨는 오류이다.
왼쪽에 떠있는 창에 Schemas에 들어가 사용할 DB를 더블클릭으로 선택하거나 USE cth; 와 같은 SQL문을 실행해주면 된다.
이제 다시 아까 실패한 SQL문을 실행해보고 새로고침을 눌러보면
DB Table이 정상적으로 생성된 것을 확인할 수 있다.
'한화시스템 Beyond SW Camp > 기반기술' 카테고리의 다른 글
[Database] 이론 및 기본 문법(DDL, DML, DCL) (1) | 2024.11.28 |
---|---|
[네트워크] 3계층 구조 (3 tier architecture) (0) | 2024.11.28 |
[리눅스] mariaDB - DB실습 (환경 구축 및 WAS 접속) (1) | 2024.11.26 |
[리눅스] mariaDB - WAS(Web Application Server) 설치 (0) | 2024.11.26 |
[리눅스] mariaDB - mariaDB 설치 (1) | 2024.11.26 |