0
0
Lập trình
Admin Team
Admin Teamtechmely

Hướng dẫn chi tiết cách nhập 1.000.000 bản ghi vào bảng PostgreSQL trong Docker Container

Đăng vào 3 ngày trước

• 3 phút đọc

Hướng dẫn chi tiết cách nhập 1.000.000 bản ghi vào bảng PostgreSQL trong Docker Container

Trong quá trình phát triển và thử nghiệm, việc nhập một lượng lớn dữ liệu vào cơ sở dữ liệu là một nhiệm vụ quan trọng. Bài viết này sẽ chỉ rõ cách thức nhập hàng triệu bản ghi từ file CSV vào cơ sở dữ liệu PostgreSQL đang chạy trong Docker container. Quá trình này không chỉ giúp bạn dễ dàng quản lý và kiểm tra dữ liệu mà còn cải thiện hiệu suất của các truy vấn trong ứng dụng của bạn.

Giới thiệu về PostgreSQL

PostgreSQL, hay còn gọi là Postgres, là một trong những hệ thống quản lý cơ sở dữ liệu quan hệ mã nguồn mở mạnh mẽ nhất hiện nay. Với khả năng mở rộng và tuân thủ các tiêu chuẩn SQL, PostgreSQL cung cấp một nền tảng vững chắc cho việc lưu trữ và truy xuất dữ liệu.

1. Nhập dữ liệu từ file CSV vào cơ sở dữ liệu PostgreSQL trong Docker

Để bắt đầu, bạn cần chuẩn bị một file CSV. Có thể là file chứa dữ liệu giả tạo hoặc file mà bạn đã xuất từ một cơ sở dữ liệu khác. Sau đó, bạn sẽ thực hiện các bước sau:

Bước 1: Kiểm tra tên của container PostgreSQL

Đầu tiên, hãy chạy lệnh sau để lấy danh sách các container đang hoạt động trên hệ thống của bạn:

Copy
docker ps

Tìm tên container PostgreSQL trong danh sách. Ví dụ, giả sử tên container của bạn là project-postgres-1.

Bước 2: Sao chép file CSV vào container PostgreSQL

Chạy lệnh sau để sao chép file CSV từ máy tính của bạn vào container:

Copy
docker cp ./ten_file.csv project-postgres-1:/ten_file_trong_container.csv

Lưu ý:

  • Thay ten_file.csv bằng tên file thực tế của bạn.
  • Đảm bảo bạn đang ở trong thư mục chứa file CSV.
  • Nếu có nhiều file, hãy sao chép cả thư mục chứa file để tiết kiệm thời gian.

Bước 3: Khởi chạy container PostgreSQL và truy cập vào cơ sở dữ liệu

Sử dụng lệnh sau để truy cập vào container, chọn cơ sở dữ liệu mà bạn muốn nhập CSV:

Copy
docker exec -it project-postgres-1 psql -U ten_user -d ten_database

Bước 4: Nhập dữ liệu từ file CSV vào bảng

Cuối cùng, để nhập dữ liệu từ file CSV, hãy chạy lệnh sau bên trong container PostgreSQL:

Copy
\copy ten_bang from '/ten_file_trong_container.csv' delimiter ',' CSV HEADER;

Nếu bạn nhận được thông báo như COPY 10, điều đó có nghĩa là quá trình nhập đã thành công. Quá trình này rất nhanh chóng và có thể xử lý hàng triệu bản ghi trong thời gian ngắn.

2. Xuất và nhập cơ sở dữ liệu trong PostgreSQL

Xuất cơ sở dữ liệu

Để xuất cơ sở dữ liệu, sử dụng lệnh sau:

Copy
docker exec -i project-postgres-1 psql -U ten_user ten_database > duong_dan/backup.sql

Nhập cơ sở dữ liệu

Để nhập cơ sở dữ liệu, sử dụng lệnh sau (thay > bằng <):

Copy
docker exec -i project-postgres-1 psql -U ten_user ten_database < duong_dan/backup.sql

Việc xuất và nhập cơ sở dữ liệu cũng rất nhanh chóng và thường mất từ 3 đến 5 phút cho các cơ sở dữ liệu lớn.

3. Một số lệnh hữu ích trong PostgreSQL

Dưới đây là một số lệnh cơ bản giúp bạn quản lý dữ liệu trong PostgreSQL một cách hiệu quả:

  • \l: Hiển thị danh sách cơ sở dữ liệu.
  • \c ten_database: Chọn cơ sở dữ liệu.
  • \dt: Hiển thị danh sách bảng trong cơ sở dữ liệu.
  • \d ten_bang: Hiển thị cấu trúc bảng chi tiết.

4. Kết luận

Bài viết này đã hướng dẫn chi tiết cách nhập dữ liệu từ file CSV vào PostgreSQL trong Docker container, cùng một số lệnh hữu ích để quản lý cơ sở dữ liệu. Hy vọng rằng với những kiến thức này, bạn sẽ dễ dàng làm việc với PostgreSQL và tận dụng tối đa các tính năng của nó trong dự án của mình.

Cảm ơn bạn đã theo dõi bài viết.
source: viblo

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào