Cách tạo database trong PostgreSQL

Để tạo mới 1 database trong PostgreSQL có 3 cách:

Sử dụng command “createdb”

Cú pháp: 

createdb [connection-option...] [option...] [dbname [description]]

Các option của command:

  • -D <tablespace> hoặc –tablespace=<tablespace>: Chỉ định tablespace lưu trữ của PostgreSQL
  • -E <encoding> hoặc –encoding=<encoding>
  • -l locale hoặc –locale=locale
  • -O <owner> hoặc –owner=<owner>: Chỉ định user quản lý database

Để sử dụng script createdb của PostgreSQL cần login vào tài khoản postgres của HDH trước

su - postgres

VD 1: Tạo database có tên là mydb, các thông số còn lại để mặc định.

createdb mydb

VD2: Tạo database có tên là mydb, và owner là user vinasupport

createdb -O vinasupport mydb

Sử dụng SQL Query “CREATE DATABASE”

Cú pháp: 

CREATE DATABASE name
    [ [ 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 ] ]

Để tạo database sử dụng SQL Query chúng ta cần login vào user postgres và psql

VD1: Tạo database có tên là mydb, các thông số còn lại để mặc định.

CREATE DATABASE mydb;

VD2: Tạo database có tên là mydb, encoding là UTF8, owner là vinasupport và số lượng kết nối tối đa là 25

CREATE DATABASE mydb
 WITH ENCODING='UTF8'
 OWNER=vinasupport
 CONNECTION LIMIT=25;

Sử dụng công cụ PgAdmin 4

Bước 1: Đầu tiên chúng ta kết nối tới PgAdmin 4 => Kích chuột phải vào [ Databases ] => Chọn [ Create ] => [ Database ]

Cách tạo database trong PostgreSQL

Bước 2: Ở màn hình [ Create – Database], Tab General (Thông tin chung), điền các thông tin sau:

  • Database: Tên database
  • Owner: Là user quản lý database
  • Comment

Cách tạo database trong PostgreSQL

Bước 3: Ở tab [Definition], điền các thông tin về:

  • Encoding
  • Template: Mặc định có 2 template là template0template1
  • Collation
  • Character type
  • Connection limit: -1 tức là không giới hạn số kết nối

Cách tạo database trong PostgreSQL

Bước 4: Tab SQL, sẽ hiển thị câu SQL tương ứng với database cần tạo.

Cách tạo database trong PostgreSQL

Kết quả:

Cách tạo database trong PostgreSQL

Cách tạo database trong PostgreSQL
Không bao giờ là thất bại. Tất cả chỉ là thử thách. - Chung Ju Yung

Cách tạo database trong PostgreSQL

Series chia sẻ về PostgreSQL – Cơ sở dữ liệu mã nguồn mở tiên tiến nhất thế giới.

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

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:

CREATE DATABASE name
    [ [ 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 ] ]

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.

Cách tạo database trong PostgreSQL

Ví dụ 1/3:

Tạo database có tên là mydb1, các thông số còn lại để mặc định.

Cách tạo database trong PostgreSQL

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.

Cách tạo database trong PostgreSQL

Cách tạo database trong PostgreSQL

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).

CREATE DATABASE mydb2
WITH OWNER minhhoangblog
ENCODING='LATIN10'
CONNECTION LIMIT 10;

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.

CREATE DATABASE mydb3
TEMPLATE template0 
ENCODING EUC_JP 
LC_COLLATE 'Japanese_Japan.20932' 
LC_CTYPE 'Japanese_Japan.20932';

※Lưu ý:

  • Nếu locale settings (LC_COLLATELC_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_COLLATELC_CTYPE sẽ không thể thay đổi.

2. Sử dụng lệnh CREATE DATABASE trong psql

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 ;

Cách tạo database trong PostgreSQL

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

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.

Cách tạo database trong PostgreSQL

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.

Cách tạo database trong PostgreSQL

Cảm ơn bạn đã theo dõi. Đừng ngần ngại hãy cùng thảo luận với chúng tôi!

Bài viết nổi bật cùng chuyên mục

Giới thiệu

Minh Hoàng

Xin chào, tôi là Hoàng Ngọc Minh, hiện đang làm BrSE, tại công ty Toyota, Nhật Bản. Những gì tôi viết trên blog này là những trải nghiệm thực tế tôi đã đúc rút ra được trong cuộc sống, quá trình học tập và làm việc. Các bài viết được biên tập một cách chi tiết, linh hoạt để giúp bạn đọc có thể tiếp cận một cách dễ dàng nhất. Hi vọng nó sẽ có ích hoặc mang lại một góc nhìn khác cho bạn[...]