본문 바로가기
🌐OS/Linux

[Linux] 데이터베이스 사용

by inbeom 2023. 8. 27.
728x90

Server Client

sshd -(22)- putty httpd -(80,443)- browser mysql -(3306)- app(DBA) app

데이터베이스 접속

DBA => app -> mysql로 직접적으로 접근 User => putty -> sshd -> mysql로 우회하여 접근

DataBase

mariadb설치

  • yum install mariadb-server

서비스 가동

  • service mariadb start

sql문

  • mysql -u root [-p]
  • show databases;
  • use mysql;
  • show tables;
  • desc [table name]
  • select * from [user]

DB명 : inhatc_db

*DB유저 : inhatcdb *password : inhatcdb!@34


사용자

항상 localhost와 허용할 특정 IP(%)로 2개의 유저를 만들어줘야 한다. 권한도 설정해줘야 함 (sluk.*) - sluk데이터베이스의 모든 권한(select~)을 주겠다.

root가 외부에서 접근할 수 있도록 설정

  • CREATE USER 'root'@'%' IDENTIFIED BY 'inhatcdb!@db34';
  • grant all privileges on . to root@'%' identified by 'inhatcdb!@db34'; <- 비번 변경 가능

db생성

  • create database inhatc_db;

inhatcdb사용자가 localhost(내부), %(외부)에서 접근할 수 있도록 설정

  • CREATE USER 'inhatcdb'@'localhost' IDENTIFIED BY 'inhatcdb!@34';
  • CREATE USER 'inhatcdb'@'%' IDENTIFIED BY 'inhatcdb!@34';
  • grant all privileges on inhatc_db.* to 'inhatcdb'@'localhost';
  • grant all privileges on inhatc_db.* to 'inhatcdb'@'%';
  • flush privileges;

mysql 원격 접속

  • mysql -h [ip] -u [user] -p
  • ** AWS console에서 보안그룹(인바운드규칙) 꼭 방화벽 해제 (mysql: 3306)inhatc

sql연습 사이트

shell에 파일 다운받기

zip파일 압축해제

  • yum install zip <- root에서 실행
  • unzip mysqlsampledatabase.zip
  • vi mysqlsampledatabase.sql

database자동 삽입(생성)

  • mysql -u root -p < mysqlsampledatabase.sql

데이터베이스 기본 설정파일

  • /etc/my.cnf
  • DB디렉토리 경로 설정

사용자는 mysql데이터베이스에서 확인 가능

(관리자만 보임)

  • use mysql; # mysql 스키마 선택
  • select user, host from user; # 사용자 목록 조회
728x90

'🌐OS > Linux' 카테고리의 다른 글

[Linux] Cron 스케줄러  (0) 2023.08.27
[Linux] FTP 접속  (0) 2023.08.27
[Linux] VirtualHost  (0) 2023.08.27
[Linux] 파일배포 및 관리  (0) 2023.08.27
[Linux] 환경변수 & 서비스 가동  (0) 2023.08.27