본문 바로가기
DB/MySQL,MariaDB

MySQL 트리거 만들기

by 팡팡마트 2023. 10. 11.
728x90

** CentOS 8 Stream

 

data테이블에서 삭제를 하면 data_backup테이블로 이동하는 트리거를 만듬

 

1. MySQL 8.0 설치

MySQL 8.0 설치 (tistory.com)

 

MySQL 8.0 설치

** CentOS 8 Stream 1. mysql 다운로드 링크 확인 MySQL :: MySQL Community Edition MySQL :: MySQL Community Edition MySQL Community Edition MySQL Community Edition is the freely downloadable version of the world's most popular open source database. It

pangpangmart.tistory.com

 

2. Azure Database for MySQL 유동 서버 생성

 

3. DB 접속

# mysql -h kohmysql.mysql.[ ].com -u azure -p

 

4. Database 생성

mysql> create database test;

mysql> show databases;

mysql> use test;

 

5. 테이블 생성

mysql> CREATE TABLE data (id int, name varchar(20), surname varchar(20));

mysql> CREATE TABLE data_backup (id int, name varchar(20), surname varchar(20));

mysql> show tables;

 

data테이블에 임의의 값 입력

mysql> INSERT INTO data VALUES (1,"aaa","bbbbbbbb");

mysql> INSERT INTO data VALUES (2,"ccc","dddddd");

 

테이블 확인

mysql> select * from data;

 

5. 트리거 만들기

mysql> DELIMITER //
CREATE TRIGGER triggertest BEFORE DELETE
ON data FOR EACH ROW 
BEGIN
INSERT INTO data_backup (id, name, surname) 
VALUES (OLD.id, OLD.name, OLD.surname);
END;
//
DELIMITER;

 

생성확인

mysql> show triggers \G;

 

*삭제

mysql> drop triggers 트리거명;

 

6. 작동확인

data테이블에서 값삭제

mysql> delete from data where id=1;

mysql> select * from data_backup;

data테이블에서 값을 삭제하여 data_backup테이블에 자동으로 값이 추가됨

 

**이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

728x90

'DB > MySQL,MariaDB' 카테고리의 다른 글

MariaDB백업 Mariabackup  (0) 2023.07.31
특정IP 접속 허용  (0) 2023.07.27
MariaDB Replication 실시간 이중화  (0) 2023.07.26
MySQL용 dump DB  (0) 2023.07.23
초기 설치 시 MariaDB 패스워드 변경  (0) 2023.07.23