테이블 관리
[테이블 생성]
create database 디비명;
[테이블 삭제]
SET FOREIGN_KEY_CHECKS = 0; /*foreingkey 제약조건 비활성화*/
set @tables = null;
select group_concat(table_schema, '.', table_name) into @tables from information_schema.tables where table_schema = '스키마명';
set @tables = concat('drop table ', @tables);
prepare stmt from @tables;
execute stmt;
deallocate prepare stmt;
SET FOREIGN_KEY_CHECKS = 1; /*foreingkey 제약조건 활성화*/
[컬럼 추가]
ALTER table 테이블명 add 컬럼명 varchar(1) default 'Y' COMMENT '커맨트입니다.' after 컬럼명;
[전체 테이블에서 컬럼 찾기]
SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME LIKE '%컬럼명%';
유저 관리
[유저 생성]
CREATE USER '아이디'@'%' IDENTIFIED BY '비밀번호';
[권한 부여]
(권한 부여 with 유저생성)
GRANT ALL PRIVILEGES ON 스키마명.* TO '생성할유저명'@'localhost' IDENTIFIED BY '패스워드' WITH GRANT OPTION;
(권한 부여)
GRANT ALL PRIVILEGES ON 스키마명.* TO '생성할유저명'@'localhost';
#localhost 대신 '%' or '111.111.%' or '111.111.111.111' 등 ip 범위설정 가능
[권한 확인, CLI]
use mysql;
select host,user from user;
[권한 리프레시]
FLUSH PRIVILEGES;
백업 및 덤프
[백업]
(/mariadb/bin 디렉토리에서 실행)
./mysqldump --routines --triggers -u maria -p 스키마명 --default-character-set utf8 > ~/경로/파일명.sql
[원격지 백업]
mysqldump -h 호스트(도메인orIP) --routines --triggers -u 유저명 -p 스키마명 --default-character-set utf8 > ~/로컬경로/파일명.sql
[덤프]
(/mariadb/bin 디렉토리에서 실행)
./mysql -u maria -p 스키마명 < ~/경로/파일명.sql
DB 접속 시 필요정보
- ip
- port
- database
- username
- password
관련 링크
1. database vs scheme in MYSQL
https://stackoverflow.com/questions/11618277/difference-between-schema-database-in-mysql
반응형
'Backend > 데이터베이스' 카테고리의 다른 글
[PostgreSQL] Logical Replication로 데이터 Migration하기 (1) | 2024.10.13 |
---|---|
오라클 19c 설치 (REHL 8) with RPM (1) | 2024.02.13 |
AWS RDS(MariaDB), MongoDB 운영 데이터를 개발로 이관하기 (0) | 2024.02.13 |
[데이터베이스 / DB] Error Code: 1175, You are using safe update mode and you tried to update a table without a WHERE.... 처리방법 (0) | 2021.02.23 |