Bài viết này sẽ mô tả cách tạo cơ sở dữ liệu mới trong PostgreSQL bằng lệnh CREATE DATABASE.
Để tạo cơ sở dữ liệu PostgreSQL, tài khoản của bạn phải là tài khoản superuser hoặc có đặc quyền CREATEDB. Xem bài viết: CREATE ROLE.
1. Sử dụng truy vấn sql CREATE DATABASE
Sử dụng lệnh CREATE DATABASE để tạo cơ sở dữ liệu với định dạng như sau:
[ [ WITH ] [ OWNER [=] user_name ] [ TEMPLATE [=] template ] [ ENCODING [=] encoding ] [ LC_COLLATE [=] lc_collate ] [ LC_CTYPE [=] lc_ctype ] [ TABLESPACE [=] tablespace_name ] [ ALLOW_CONNECTIONS [=] allowconn ] [ CONNECTION LIMIT [=] connlimit ] [ IS_TEMPLATE [=] istemplate ] ][/code]
Xem thêm: https://www.postgresql.org/docs/current/sql-createdatabase.html.
Theo mặc định, cơ sở dữ liệu mới sẽ được tạo bằng cách nhân bản (clone) cơ sở dữ liệu hệ thống tiêu chuẩn từ template1. Khi muốn sử dụng template0 hay template của một database khác thì bạn có thể chỉ định ở tham số TEMPLATE. Điều này hữu ích nếu bạn muốn tránh sao chép bất kỳ đối tượng cài đặt cục bộ nào có thể đã được thêm vào template1.
Đầu tiên, bạn vào công cụ quản lý database của PostgreSQL là PgAdmin 4 > Right-click lên tên database bất kỳ > chọn Query Tool.
Ví dụ 1/3:
Tạo database có tên là mydb1, các thông số còn lại để mặc định.
Tiếp theo, right-click lên tên database vừa tạo > chọn Properties để xem thử các thông số mặc định đã được set thế nào.
Ví dụ 2/3:
Tạo database có tên là mydb2, owner là minhhoangblog, encoding là LATIN10, và số lượng kết nối tối đa là 10 (-1 là không giới hạn).
WITH OWNER minhhoangblog
ENCODING=’LATIN10′
CONNECTION LIMIT 10;[/code]
Ví dụ 3/3:
Tạo database có tên là mydb3, sử dụng template0, character set là EUC_JP, và có chỉ định collation Japanese_Japan.20932.
TEMPLATE template0
ENCODING EUC_JP
LC_COLLATE ‘Japanese_Japan.20932’
LC_CTYPE ‘Japanese_Japan.20932’;[/code]
※Lưu ý:
- Nếu locale settings (LC_COLLATE và LC_CTYPE) của bạn khác với locale settings của template1 (mặc định), thì bạn phải chỉ định tham số TEMPLATE là template0.
- Khi database mới được tạo thành công thì bộ 3: TEMPLATE, LC_COLLATE và LC_CTYPE sẽ không thể thay đổi.
2. Sử dụng lệnh CREATE DATABASE trong trong psql
Đầu tiên, bạn vào command prompt (cmd) của Windows > nhập lệnh psql -U postgres > nhập password của tài khoản postgres (mật khẩu này được thiết lập lúc cài đặt PostgreSQL).
Sau đó tạo database có tên mydb với thông số còn lại để mặc định > nhấn Enter để tạo database mới. Nhập lệnh ở psql thì có thể nhập trên nhiều dòng, phải kết thúc lệnh bằng dấu chấm phẩy ;
Bạn có thể nhập \l > nhấn enter để xem danh sách thông tin của các database đã được tạo.
Xem thêm: Xem danh sách các cơ sở dữ liệu đã tạo.
Các option khác muốn chỉ định khi tạo mới database thì bạn cũng có thể thiết lập tương tự như mục 1. Sử dụng truy vấn sql CREATE DATABASE
3. Sử dụng GUI (giao diện người dùng) tạo database
Đầu tiên, bạn vào công cụ quản lý database của PostgreSQL là PgAdmin 4 > Right-click lên Databases > chọn Create > chọn Database.
Sau đó tạo database có tên mydb với các thông số khác để mặc định > click Save để tạo database mới.
[…] vấn,… PostgreSQL có thể dễ dàng thực hiện điều này thông qua câu lệnh CREATE DATABASE như […]