Category : MariaDB MariaDB / 메모 내보내기 가져오기와 View 테이블 View 테이블을 포함한 데이터베이스를 내보내고 가져왔을 때, View 테이블이 제대로 작동하지 않을 수 있다. View 테이블을 대상으로 한 쿼리가 되지 않는다면 View 테이블을 다시 만든다. MariaDB / 데이터 저장 위치 변경하는 방법 목차1 Ubuntu 24.04 Server1.1 현재 저장 위치 확인1.2 데이터 저장 위치 변경1.3 테스트2 Windows2.1 현재 저장 위치 확인2.2 데이터 저장 위치 변경2.3 테스트 Ubuntu 24.04 Server 현재 저장 위치 확인 MariaDB에 접속한 후 다음과 같이 명령하면... select @@datadir; 데이터 저장 경로를 확인할 수 있다. MariaDB [(none)]> select @@datadir; +-----------------+ | […] MariaDB / 설치와 접속 목차1 Ubuntu 24.04 Server1.1 설치1.2 접속2 Rocky Linux 92.1 설치2.2 접속3 Windows3.1 설치3.2 접속 Ubuntu 24.04 Server 설치 다음과 같이 명령하여 MariaDB를 설치한다. # apt install mariadb-server 다음과 같이 명령하여 root 계정의 비밀번호 생성 등 몇 가지 설정을 한다. # mysql_secure_installation Ubuntu에 설치하는 경우 MariaDB가 바로 시작된다. 그리고 컴퓨터를 다시 […] MariaDB / Procedure 예제로 사용한 데이터베이스는 employees이다. 목차1 Procedure2 기본 예제2.1 Procedure 만들기2.2 Procedure 호출하기2.3 Procedure 조회하기2.4 Procedure 삭제하기3 매개변수 사용하기 Procedure Procedure를 이용하면 여러 쿼리를 한 번에 실행할 수 있다. 기본 예제 Procedure 만들기 delimiter를 다른 것으로 변경한다. MariaDB [employees]> delimiter ## create procedure로 procedure를 만든다. procedure 이름 뒤에 괄호에는 매개변수가 들어간다. p_departments라는 […] MariaDB / Query / EVENT / 만들기, 수정하기, 삭제하기 목차1 EVENT를 사용하기 위한 설정1.1 방법 11.2 방법 21.3 설정 상태 확인2 EVENT 만들기3 EVENT 수정하기4 EVENT 삭제하기5 기타 EVENT를 사용하기 위한 설정 방법 1 다음과 같이 명령한다. MariaDB를 다시 시작하면 OFF로 변경된다. SET GLOBAL event_scheduler = ON; 방법 2 환경 설정 파일(Ubuntu Server라면 50-server.cnf, Rocky Linux라면 mariadb-server.cnf)에 다음 코드를 […] MariaDB / Query / WHERE 예제로 사용한 데이터베이스는 employees이다. WHERE를 이용하면 조건에 맞는 데이터만 추출할 수 있다. 예를 들어 다음과 같이 쿼리하면 gener가 M인 경우 1을 반환하는데... SELECT first_name, gender, gender = 'M' FROM employees LIMIT 10 ; +------------+--------+--------------+ | first_name | gender | gender = 'M' | +------------+--------+--------------+ | Georgi | M | 1 | […] MariaDB / 연산자 / 논리 연산자 MariaDB의 논리 연산자에 대하여 알아본다. 예제로 사용하는 테이블은 아래의 데이터를 가진 T_2이라는 테이블이다. C_1의 데이터 형식은 정수, C_2의 데이터 형식은 문자이다. +----+------+------+ | ID | C_1 | C_2 | +----+------+------+ | 1 | 1 | A | | 2 | 2 | B | | 3 | 3 | C | […] MariaDB / VIEW / 만들기, 수정하기, 삭제하기 예제로 사용한 데이터베이스는 employees이다. 목차1 VIEW2 VIEW 만들기2.1 CREATE VIEW2.2 CREATE OR REPLACE VIEW2.3 CREATE VIEW IF NOT EXISTS3 VIEW 수정하기4 VIEW 삭제하기 VIEW VIEW는 SELECT의 결과를 테이블처럼 사용할 수 있게 해준다. 반복되는 쿼리를 대체하거나, 민감한 정보를 숨기고 싶을 때 사용한다. VIEW 만들기 CREATE VIEW 예를 들어 남자인 직원의 first_name과 last_name을 […] DBeaver / MariaDB / CSV 가져오기 대량의 데이터를 CSV 파일로 만들어서 테이블에 삽입할 수 있다. 명령어로도 가능하지만 툴을 이용하는 게 편하다. DBeaver에서 CSV 데이터를 Import하는 방법을 알아본다. 목차1 CSV의 열과 테이블의 열이 일치하는 경우2 CSV의 열과 테이블의 열이 일치하지 않는 경우 CSV의 열과 테이블의 열이 일치하는 경우 다음과 같은 테이블이 있다고 하자. ID는 PRIMARY KEY로 자동 […] MariaDB / 함수 / ROUND ROUND는 반올림하는 함수이다. 별도 설정을 하지 않으면 소수 첫째 자리에서 반올림한다. SELECT ROUND( 1.4 ); +--------------+ | ROUND( 1.4 ) | +--------------+ | 1 | +--------------+ SELECT ROUND( 1.5 ); +--------------+ | ROUND( 1.5 ) | +--------------+ | 2 | +--------------+ 음수의 경우 반올림이라고 표현하는 게 이상할 수도 있다. -1.4 […] MariaDB / SELECT 결과를 INSERT하는 방법 Z_1 테이블에서 a, b, c 열의 데이터를 Z_2 테이블의 x, y, z 열에 삽입한다고 하자. 우선 Z_1 테이블에서 a, b, c 열의 데이터를 가져오는 쿼리를 만든다. SELECT a, b, c FROM Z_1 ; 그 위에 INSERT를 추가한다. INSERT INTO Z_2 ( x, y, z ) SELECT a, b, c FROM […] MariaDB / 피벗 테이블 만들기 피벗 테이블은 엑셀의 유용한 기능 중의 하나이다. 예를 들어 아래의 왼쪽 데이터를 오른쪽 표처럼 만드는 것이 피벗 테이블이다. 조건에 따라 그룹화시켜서 보기 좋게 데이터를 정리하는 것이라 보면 된다. MariaDB에서도 몇 가지 함수를 이용하여 피벗 테이블을 만들 수 있다. 테이블의 이름이 pivot이라 가정하면, 아래처럼 쿼리를 짜면 된다. SELECT company , SUM( […] MariaDB / 함수 / LIKE 다음과 같은 테이블이 있습니다. 열의 이름은 column1, 데이터는 12345, 23456 두 개가 있습니다. MariaDB [test]> SELECT * FROM table1; +---------+ | column1 | +---------+ | 12345 | | 23456 | +---------+ WHERE를 이용하면 특정 값을 갖는 행을 출력할 수 있습니다. 예를 들어 다음은 column1의 값이 12345인 데이터를 출력합니다. MariaDB [test]> […] MariaDB / HeidiSQL / TIP 주석 설정하기 해제하기 주석으로 만들려는 코드를 선택합니다. 마우스 우클릭 후 [주석 설정/해제]를 클릭하면... 각 행에 --가 붙으면서 주석 처리가 됩니다. 주석을 선택한 상태에서 [주석 설정/해제]를 클릭하면 주석이 해제됩니다. 예약어 대문자로 만들기 예약어는 대소문자를 구분하지 않지만, 보통 대문자로 입력합니다. 대문자와 소문자를 번갈아 입력하는 것은 번거롭습니다. 다행이 HeidiSQL에는 예약어를 대문자로 바꿔주는 기능이 […] MariaDB / HeidiSQL / 쿼리 실행하는 방법 HeidiSQL을 실행하고 데이터베이스 서버에 연결합니다. 쿼리를 실행할 데이터베이스를 선택합니다. [쿼리] 탭을 클릭합니다. 쿼리를 입력하고 삼각형 모양의 아이콘을 클릭하면 쿼리가 실행됩니다. 단축키는 F9입니다. 쿼리 결과는 하단에 표시됩니다. 여러 개의 쿼리를 입력하고 실행하면, 각 결과가 별도의 탭으로 표시됩니다. 쿼리를 선택하고 [현재 쿼리 실행]을 클릭하면 선택한 쿼리만 실행됩니다. 단축키는 Shift+Ctrl+F9입니다. MariaDB / HeidiSQL / MariaDB에 연결하는 방법 HeidiSQL로 MariaDB에 접속해보겠습니다. 만약 다른 기기에 있는 MariaDB라면 통신이 가능하도록 포트가 열려 있어야 합니다. MariaDB의 기본 포트는 3306입니다. HeidiSQL을 실행하면 세션 관리자가 열립니다. [신규]를 클릭합니다. 다음과 같은 화면이 나오는데, 네트워크 유형이 MariaDB or MySQL인 것을 확인하고... 서버 정보를 입력합니다. 세션 이름은 적절히 정하고 [저장]합니다. 이제 세션 이름을 더블 클릭하거나, [열기]를 […] MariaDB / DATABASE / 백업하기, 복원하기 목차1 모든 데이터베이스 백업과 복원1.1 백업1.2 복원2 특정 데이터베이스 백업과 복원2.1 백업2.2 복원3 여러 데이터베이스 백업과 복원3.1 백업3.2 복원 모든 데이터베이스 백업과 복원 백업 모든 데이터베이스를 backup-all.sql로 백업 user는 권한 있는 사용자명으로 변경 mysqldump -u user -p --all-databases > backup-all.sql 복원 backup-all.sql을 복원 user는 권한 있는 사용자명으로 변경 mysql -u […] MariaDB / Query / UNION, UNION ALL UNION 또는 UNION ALL을 이용하면 여러 테이블의 데이터를 합하여 출력할 수 있습니다. 예를 들어 다음과 같은 테이블과... SELECT * FROM test_1; +-------+-------+-------+ | col_1 | col_2 | col_3 | +-------+-------+-------+ | 1 | A | 1 | | 2 | B | 1 | | 3 | C | 2 […] MariaDB / 함수 / IF, IFNULL, NULLIF 목차1 IF1.1 문법1.2 예제2 IFNULL2.1 문법2.2 예제3 NULLIF3.1 문법3.2 예제 IF 문법 IF( expression1, expression2, expression3 ) expression1가 참이면 expression2를, 거짓이면 expression3을 반환합니다. 예제 SELECT IF( 2>3, 'T', 'F' ); +---------------------+ | IF( 2>3, 'T', 'F' ) | +---------------------+ | F | +---------------------+ 2>3이 거짓이므로 F를 반환합니다. SELECT IF( 2<3, […] MariaDB / Query / 주석 MariaDB의 쿼리문에서 주석을 만드는 방법은 세 가지가 있습니다. 한 줄 주석 한 줄 주석을 만들고 싶다면 # 또는 --를 사용합니다. 기호가 있는 다음부터 줄 끝까지가 주석이 됩니다. # Comment -- Comment 여러 줄 주석 여러 줄의 주석을 만들고 싶다면 /* */를 사용합니다. /* Comment Comment */