본문 바로가기
Database

[MariaDB] DB Dump

by qoth_0 2023. 11. 24.
728x90
반응형

DB Dump

  • 데이터베이스의 구조와 데이터를 SQL 형식으로 추출하는 데 사용되는 방식을 Dump라 함. 주로 특정 DB에서 다른 DB로 데이터와 DB구조를 이전, 복사, 백업 할때 사용
  • 데이터베이스 dump
    • mysqldump -u [username] -p [password] [database_name] > dumpfile.sql
    • mariaDB에서도 mysql명령어를 사용함에 유의(MariaDB가 MySQL의 fork였던 관계로, 여전히 MySQL관련 명령어 사용됨)
    • 덤프파일을 별도의 에디터에서 추가 작업하지 않도록 유의 → UTF8이 아닌 UTF16이 되면 복원에서 에러
  • dump파일 복원
    • 스키마는 생성 필요
    • mysql -u [new_username] -p[new_password] [new_database_name] < dumpfile.sql
  • mariaDB가 mysql의 fork였던 관계로, mysql관련 명령어 사용됨에 유의
  • 실습
    • 윈도우에서 데이터베이스 dump 및 복원
    mysqldump -u root -p --default-character-set=utf8mb4 board > dumpfile.sql

    procject폴더를 만들고 터미널로 위 명령어 실행

    덤프 파일이 만들어 졌다. (linux dump를 위해 git 업로드하기)

    데이터베이스 다 지우고 빈깡통으로 만들기

    drop database board;
    create database board;
    mysql -u root -p board < dumpfile.sql

    터미널에서 위 명령어 실행

    데이터베이스 복원 완료 - 프로시저는 복원되지 않음

    • github에 dump파일 받아서 리눅스에서 gitclone하여 데이터베이스 복제하기
      • linux에 mariadb설치, 데이터베이스 board 생성
      • git clone 레파지토리 주소
      • 해당 폴더로 이동하여 덤프 복원 명령어 실행
    sudo apt-get update
    sudo apt-get upgrade
    
    # mariadb 설치
    sudo apt install mariadb-server
    
    # 접속
    sudo mariadb -u root -p
    
    # 데이터베이스 생성
    create database board;
    
    # 깃 클론(dump파일 다운로드)
    git clone https://github.com/qoth-0/mariadb_syntax.git
    
    # dump
    cd mariadb_syntex
    sudo mysql -u root -p board < 6.dumpfile.sql
    
    
    sudo mariadb -u root -p
    
    # 테이블 확인
    use board;
    select * from author;
    select * from post;

    create database board; 하기

    git clone 하기

    dump 후 접속
    테이블 확인 가능

728x90
반응형

'Database' 카테고리의 다른 글

[MariaDB] 정규화  (2) 2023.11.27
[MariaDB] DB 설계  (1) 2023.11.27
[MariaDB] 저장 프로시저  (1) 2023.11.24
[MariaDB] 사용자 관리  (1) 2023.11.24
[MariaDB] INDEX  (0) 2023.11.24