NỘI DUNG

Hosting tốc độ cao Vietnix - tốc độ tải trang trung bình dưới 1 giây
VPS siêu tốc Vietnix - trải nghiệm mượt mà, ổn định
20/07/2024
Lượt xem

Hướng dẫn cách Dump Database từ Container trên Docker hiệu quả

20/07/2024
7 phút đọc
Lượt xem

Đánh giá

Hiện nay, Docker (Phần mềm ảo hóa container) được nhiều người sử dụng vì sự gọn nhẹ, tiện lợi. Thông qua các Container có sẵn, Docker cung cấp cách để xây dựng, phát triển và chạy các ứng dụng một cách dễ dàng. Trong bài viết dưới đây, Vietnix sẽ hướng dẫn bạn cách Dump Database từ Container trên Docker bằng dịch vụ Mysql/Mariadb. 

Cách Dump Database từ Container chi tiết

Có khá nhiều cách Dump Database từ Container trên Docker, bạn có thể sử dụng dòng lệnh hoặc các công cụ hỗ trợ. Dưới đây là phương pháp phổ biến và linh hoạt nhất, gồm 2 bước đơn giản.

Cách Dump Database từ Container chi tiết
Cách Dump Database từ Container chi tiết

Bước 1: Truy cập vào Container Database

Trước tiên, bạn phải thực hiện SSH vào VPS và cần truy cập vào đúng Container chứa Database (cơ sở dữ liệu) cần Dump (sao lưu). Cụ thể các bước như sau: 

  • Xác định Container ID của dịch vụ Mysql/Mariadb: do lúc này toàn bộ các Container trên VPS sẽ xuất hiện vì vậy bạn cần tìm chính xác Container ID của Mysql/Mariadb.
Tìm đúng Container chứa Database cần Dump
Tìm đúng Container chứa Database cần Dump
  • Tiếp đến hãy truy cập Container ID của dịch vụ Mysql/Mariadb.
Truy cập Container ID của Mysql/Mariadb
Truy cập Container ID của Mysql/Mariadb
  • Tiến hành Dump Database với lệnh:  msqldump --opt -u user_db -p name_db > Database_name.sql

Trong đó:

  • user_db: Tên người dùng để đăng nhập vào cơ sở dữ liệu (User của Database).
  • Name_db : Tên cơ sở dữ liệu cần xuất (Tên Database).
  • Database_name.sql: Đặt tên cho File dữ liệu khi Dump ra.

Bước 2: Copy dữ liệu từ Container về máy chủ (Server)

Thực hiện lệnh “exit” để thoát ra khỏi Container. Sau đó, bạn copy thư mục Database ở Container về máy chủ với lệnh sau:

Thực hiện lệnh “exit” để thoát ra khỏi Container
Thực hiện lệnh “exit” để thoát ra khỏi Container

Thế là bạn đã hoàn tất chuyển Database từ Container về Server chỉ với hai bước đơn giản như trên.

Copy dữ liệu từ Container về Server
Copy dữ liệu từ Container về Server

Có công cụ (tool) nào hỗ trợ việc Dump và Import Database dễ dàng hơn giữa các Container Docker không?

Câu trả lời là có, bạn có thể sử dụng một số tool sau:

  • Docker Compose: công cụ khá phổ biến dùng để quản lý các Container Docker trong một ứng dụng, cho phép người dùng định nghĩa và chạy Multi-Container cùng nhau trong một tệp YAML duy nhất chỉ. Bằng cách sử dụng các lệnh Docker-Compose Exec và Docker-Compose Run, Docker Compose sẽ giúp bạn Dump và Import Database một cách dễ dàng. 
  • Protainer: Công cụ giao diện quản trị web cho Docker để quản lý container, network, image, volume…. Với giao diện trực quan, đơn giản và dễ dùng Portainer được nhiều người lựa chọn sử dụng.
  • Rancher: Cũng như Protainer, Rancher cung cấp giao diện người dùng đồ họa, ngoài ra còn có cả API để quản lý Container, cụm Kubernetes và tải trọng công việc. Không cần nhớ câu lệnh, chỉ cần vài cái nhấp chuột bạn đã có thể thực hiện Dump và Import Database giữa các Container Docker. 
  • Lando: Công cụ phát triển cục bộ cho các ứng dụng PHP cho phép bạn có thể Dump và Import Database với Lando bằng các lệnh tích hợp. 
  • Dockshell: công cụ dòng lệnh (Command line) để thực thi các lệnh Docker trong IDE (môi trường phát triển tích hợp). Dockshell có các lệnh tích hợp để Dump và Import Database do đó bạn có thể dễ dàng chạy các lệnh Docker từ IDE.
Công cụ Portainer đơn giản dễ sử dụng khi Dump và Import Database
Công cụ Portainer đơn giản dễ sử dụng khi Dump và Import Database

Xét về bảo mật, cần lưu ý gì khi Dump Database từ một Container Docker đang chạy trên môi trường public cloud?

Bạn cần lưu ý một số vấn đề sau để đảm bảo tính bảo mật dữ liệu:

  • Sử dụng mạng riêng ảo (VPN): Điều này sẽ mã hóa lưu lượng truy cập giữa bạn và Container từ đó giảm thiểu khả năng bị đánh cấp thông tin dữ liệu cá nhân.
  • Xác thực và ủy quyền: Cần thiết lập phương thức xác thực và ủy quyền mạnh mẽ khi truy cập Container Docker để đảm bảo ngăn chặn các truy cập trái phép từ bên ngoài vào.
  • Mã hóa cơ sở dữ liệu: Bạn hãy mã hóa cơ sở dữ liệu quan hệ (Relational database) khi ngay cả khi nghỉ và đang di chuyển. Vì các dữ liệu được mã hóa chỉ sẽ có thể đọc được hoặc xử lý sau khi được giải mã.
  • Sử dụng các công cụ và hình ảnh Docker đáng tin: Hiện nay có khá nhiều các công cụ quản lý Docker, tuy nhiên chỉ nên sử dụng các công cụ và hình ảnh được tải xuống từ các nguồn tin cậy.
  • Cập nhật phần mềm: Việc cập nhật phần mềm thường xuyên sẽ giúp bạn nâng cấp một số tính năng trong đó có cả lỗi bảo mật. 
  • Giới hạn quyền truy cập vào Container Docker và Database: Chỉ nên cấp quyền truy cập cho những người dùng và ứng dụng cần thiết. 
  • Theo dõi và ghi nhật ký: Thường xuyên giám sát hoạt động của Container Docker và Database có thể giúp bạn phát hiện những hoạt động khả nghi. 
  • Xóa thông tin, hình ảnh nhạy cảm: Các dữ liệu nhạy cảm nên xóa ra khỏi cơ sở dữ liệu để phòng ngừa trường hợp bị lộ thông tin. 

Có thể sử dụng các kỹ thuật version control như Git để quản lý các bản Dump Database từ Container Docker không?

Có. Bạn hoàn toàn có thể sử dụng các kỹ thuật version control như Git để quản lý các bản Dump Database từ Container Docker. Bạn sẽ nhận được một số lợi ích khi sử dụng Git như:

  • Lịch sử: cho phép người dùng theo dõi lịch sử các thay đổi của cơ sở dữ liệu, đồng nghĩa với việc bạn có thể khôi phục các dữ liệu của phiên bản cũ. 
  • Hợp tác: nhiều người có thể cùng làm việc một lúc trên cùng Database, điều này sẽ giúp ích cho các nhóm phát triển cùng làm chung một dự án. 
  • Khôi phục: có thể dễ dàng khôi phục dữ liệu về trạng thái trước đó nếu có bất kỳ sự cố xảy ra. 
  • Sao lưu: Git được xem như là một hệ thống sao lưu (backup) dữ liệu. 

Lời kết

Việc sao lưu (Backup) hay kết xuất dữ liệu (Export data) là điều cần thiết. Hy vọng với hướng dẫn cách Dump Database Container trên Docker được chia sẻ bên trên sẽ giúp ích cho bạn. Hãy thường xuyên theo dõi Vietnix để cập nhật những kiến thức hay về công nghệ thông tin.

THEO DÕI VÀ CẬP NHẬT CHỦ ĐỀ BẠN QUAN TÂM

Đăng ký ngay để nhận những thông tin mới nhất từ blog của chúng tôi. Đừng bỏ lỡ cơ hội truy cập kiến thức và tin tức hàng ngày

Chọn chủ đề :

Hưng Nguyễn

Co-Founder
tại

Kết nối với mình qua

Kết nối với mình qua

Tăng tốc độ website - Nâng tầm giá trị thương hiệu

Tăng tốc tải trang

95 điểm

Nâng cao trải nghiệm người dùng

Tăng 8% tỷ lệ chuyển đổi

Thúc đẩy SEO, Google Ads hiệu quả

Tăng tốc ngay

SẢN PHẨM NỔI BẬT

7 NGÀY DÙNG THỬ HOSTING

NẮM BẮT CƠ HỘI, THÀNH CÔNG DẪN LỐI

Cùng trải nghiệm dịch vụ hosting tốc độ cao được hơn 100,000 khách hàng sử dụng

ĐĂNG KÝ NHẬN TÀI LIỆU THÀNH CÔNG
Cảm ơn bạn đã đăng ký nhận tài liệu mới nhất từ Vietnix!
ĐÓNG

ĐĂNG KÝ DÙNG THỬ HOSTING

7 NGÀY MIỄN PHÍ

ĐĂNG KÝ DÙNG THỬ HOSTING

7 NGÀY MIỄN PHÍ

XÁC NHẬN ĐĂNG KÝ DÙNG THỬ THÀNH CÔNG
Cảm ơn bạn đã đăng ký thông tin thành công. Đội ngũ CSKH sẽ liên hệ trực tiếp để kích hoạt dịch vụ cho bạn nhanh nhất!
ĐÓNG