"CLI - Database"의 두 판 사이의 차이

잔글
7번째 줄: 7번째 줄:
 
! style='width:150px' | argument !! Description
 
! style='width:150px' | argument !! Description
 
|-
 
|-
| backup || 백업 결과 및 파잉을 출력합니다.
+
| backup || 백업 결과 및 파일을 출력합니다.
 
|-
 
|-
 
| connection || 데이터베이에 연결된 상태를 출력합니다.<ref>https://mariadb.com/kb/en/mysql-command-line-client/</ref>
 
| connection || 데이터베이에 연결된 상태를 출력합니다.<ref>https://mariadb.com/kb/en/mysql-command-line-client/</ref>

2022년 1월 21일 (금) 14:00 판

본 시스템은 MariaDB 서버를[1] 데이터베이스로 사용하며 본 문서에서는 그 이름을 때때로 "mysql"로 표현합니다.

데이터베이스 상태 확인

show database {ARG} 명령어를 사용하면 데이터베이스 관련 각종 정보를 출력 할 수 있습니다.

argument Description
backup 백업 결과 및 파일을 출력합니다.
connection 데이터베이에 연결된 상태를 출력합니다.[2]
process 데이터베이에서 실행 중인 쓰레드(thread)를 표시합니다.[3]
  • ID: The client's process ID.
  • USER: The username associated with the process.
  • HOST: The host the client is connected to.
  • DB: The default database of the process (NULL if no default).
  • COMMAND: The command type.[4]
  • TIME: The amount of time, in seconds, the process has been in its current state.
  • INFO: The statement being executed.
  • PROGRESS: The total progress of the process (0-100%) (see Progress Reporting).
property 데이터베이스 연결 속성을 표시합니다.
replication 데이터베이스 복제(replication) 상태를 표시합니다.
status 데이터베이스 서비스 상태를 표시합니다.
variable 데이터베이스 global variables을 출력합니다.

user mode에서 show system mariadb 명령어를 실행하면 데이터베이스의 버전을 확인 할 수 있습니다. 데이터베이스의 동작 상태를 확인하려면 show service mysql 또는 show service status mysql 명령어를 이용할 수 있습니다.

LYSH@MyHostName# show system mariadb
Database server               : 10.4.19-MariaDB, for debian-linux-gnu (x86_64)

LYSH@MyHostName# show service mysql
● mariadb.service - MariaDB 10.4.19 database server
     Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
    Drop-In: /etc/systemd/system/mariadb.service.d
             └─migrated-from-my.cnf-settings.conf
     Active: active (running) since Tue 2021-05-11 15:44:07 KST; 6 days ago
.....

데이터베이스 연결 속성

데이터베이스 연결 속성은 imRAD 데이터베이스 서버의 IP 주소, 포트 번호, 사용자 및 암호를 포함하며 안전하게 암호화되었습니다.
show database property {id} 명령어를 사용하면 그 정보를 평문으로 출력 할 수 있습니다. 단, 보안상 암호는 일부가 * 표시로 출력됩니다.

imRAD는 3가지 형식의 연결속성이 존재합니다.

ID 이름 설명
0 MainDB 메인 데이터베이스의 연결 속성입니다. 만일 시스템 이중화 목적으로 두 개의 시스템이 존재할때 "active" 장비의 정보가 출력됩니다.
2 LocalDB 현재 장비에 대한 데이터베이스의 연결 속성입니다.
3 PeerDB 시스템 이중화 구성시 상대 장비에 대한 연결 정보입니다.

보안 목적으로 비밀번호 일부는 *로 표시됩니다.

LYSH@MyHostName# show database property 0	// Display the database connection properties of the MainDB (1)
  Host:127.0.0.1
  Port:6710
  User-id:lyon
  User-Password:*****y@nu24

연결 속성 설정

수동으로 데이터베이스 연결 속성을 설정할 수 있습니다. 그러나 모든 연결 속성을 자동으로 설정 되므로 특별한 사유 없이 연결 속성을 변경 할 필요는 없습니다.

LYSH@MyHostName# configure	
configure# database property create 2 127.0.0.1	// Configuring the host of the LocalDB(2) to 127.0.0.1
configure# exit
LYSH@MyHostName# show database property 2	// Display the database connection properties of the LocalDB(2)

데이터베이스 백업 설정

imRAD 데이터베이스 백업을 정의할 수 있으며 기본으로 다음과 같이 백업이 설정되어 있습니다.

  • db_backup_interval=1 // 매일(1일 간격)
  • db_backup_hour=3 // 새벽 3시
  • max_db_backup_file=5 // 백업 파일은 최대 5깨까지 보유

다음과 같은 명령어를 실행하면 백업 스케줄러의 상태와 최근 백업 결과를 확인 할 수 있습니다.

LYSH@MyHostName# show system backup		// view the current database backup configuration
db_backup task                : Active
db_backup                     : enable
db_backup_interval            : 1
db_backup_hour                : 3
max_db_backup_file            : 5
last_db_backup_datetime       : 2021-04-28 03:30:01
last_db_backup_state          : success

백업 속성을 변경하려면 configuration mode에서 database backup 명령어를 이용하세요.

LYSH@MyHostName# configure
configure# database backup enable		// enable database backup
configure# database backup disable		// disable database backup
configure# database backup hour 5		// Configure the starting hour of database backup
configure# database backup interval 2		// Configure the database backup interval in days
configure# database backup maxfile 3		// Configure the maximum number of database backup files to keep

show database backup 명령을 입력하면 데이터베이스 백업 속성, 최근 백업 결과 그리고 백업된 파일이 출력됩니다.

LYSH@MyHostName# show database backup
db_backup task                : Active
db_backup                     : enable
db_backup_interval            : 1
db_backup_hour                : 3
max_db_backup_file            : 5
last_db_backup_datetime       : 2021-04-28 03:30:01
last_db_backup_state          : success

total 1.7M
-rw-r--r-- 1 root root   20 Apr 25 03:30 backup_210425.sql.gz
-rw-r--r-- 1 root root   20 Apr 26 03:30 backup_210426.sql.gz
-rw-r--r-- 1 root root   20 Apr 27 03:30 backup_210427.sql.gz
-rw-r--r-- 1 root root   20 Apr 28 03:30 backup_210428.sql.gz

데이터베이스(mysql) 직접 접속

진단 및 기타 목적으로 mysql에 직접 접속을 하려면 user mode에서 mysql 명령을 실행하면 됩니다. 단, root 계정을 이용해 접속하려면 OTP(One Time Password)[5] 발급 받아 입력해야합니다.

References