Q

Quản trị viên

Là một lập trình viên yêu công nghệ, thích viết blog để chia sẻ kiến thức, kinh nghiệm lập trình và những điều thú vị trong thế giới tech.

2300 bài viết · Website
Cơ sở dữ liệu 29/08/2026 8 phút

Khôi phục xong, đủ mọi bảng mọi dòng — và không ai đăng nhập được: bốn thứ pg_dump lặng lẽ bỏ quên

Sao lưu là việc ai cũng làm và ít ai đo. Tôi đo năm cách trên cùng một cơ sở dữ liệu, và chỉ ra bốn thứ mà cách phổ biến nhất không hề lấy — trong đó có mật khẩu của mọi tài khoản, thứ chỉ lộ ra khi bạn khôi phục và không ai vào được.

Cơ sở dữ liệu 29/08/2026 9 phút

Image PostgreSQL chính thức cho ai vào cũng khỏi cần mật khẩu — và đổi POSTGRES_PASSWORD rồi up lại chẳng thay đổi gì

Image postgres chính thức dùng mặc định gốc cho mọi tham số và 'trust' cho mọi kết nối cục bộ — tiện cho việc học, nguy hiểm cho máy chủ thật. Đây là danh sách phải đổi, kèm số đo, và một cái bẫy: nhiều thiết lập chỉ có tác dụng đúng một lần lúc khởi tạo.

Cơ sở dữ liệu 29/08/2026 9 phút

RLS giấu sạch dòng của phòng khác — nhưng một lỗi trùng khoá tố cáo đúng dòng đang bị giấu

Phân quyền PostgreSQL có bốn lớp, mỗi lớp chặn được một thứ khác nhau. Tôi đo từng lớp trên bảng nhân viên bốn dòng và tìm ra ba chỗ chúng không chặn — chỗ đáng nhớ nhất là một thông báo lỗi khẳng định sự tồn tại của đúng dòng mà chính sách đang cố giấu.

Cơ sở dữ liệu 29/08/2026 9 phút

Sửa 4 byte mỗi dòng sinh ra 126 MB WAL — và đặt max_wal_size nhỏ để tiết kiệm đĩa lại ngốn thêm 29%

WAL là nhật ký ghi trước, lý do PostgreSQL sống sót sau mất điện. Tôi đo nó sinh ra bao nhiêu cho mỗi thao tác, và tìm ra một cấu hình phổ biến làm mọi thứ tệ đi theo cách ngược đời: hạ giới hạn để tiết kiệm đĩa lại đóng một vòng lặp khiến tốn nhiều đĩa hơn.

Cơ sở dữ liệu 29/08/2026 9 phút

Nạp một triệu dòng: COPY nhanh gấp 112 lần chèn từng dòng — nhưng bước nhảy lớn nhất không nằm ở COPY

Nạp dữ liệu là việc ai cũng phải làm và ít ai đo. Tôi nạp cùng một triệu dòng bằng năm cách, và tìm ra rằng cách nhanh nhất không phải cách đáng khuyên nhất — cú tăng 40 lần nằm ở gộp lô, thứ chạy được ở mọi nơi COPY không dùng được.