PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Cách tạo hệ thống xây dựng cho PostgreSQL

Nội dung của "cmd" của hệ thống xây dựng mảng cần phải là những gì bạn sẽ nhập trên dòng lệnh để chạy lệnh đó - DB cũng không ngoại lệ. Tôi không biết gì về nội bộ Postgres, nhưng nếu bạn cần chỉ định tên của DB trên dòng lệnh, thì bạn sẽ phải làm điều đó trong hệ thống xây dựng.

Tuy nhiên, có một giải pháp thay thế là có hàng tá hệ thống xây dựng nằm xung quanh - xác định hệ thống xây dựng trong .sublime-project tập tin. Theo tài liệu , .sublime-project tệp có thể có ba nhóm cơ sở:"folders" , "settings""build_systems" . Để tạo một dự án, hãy mở (các) thư mục bạn muốn đưa vào thanh bên, sau đó nhấp vào Project -> Save Project As... . Đặt tên của nó và lưu nó ở một nơi hợp lý. Sau đó, chọn Project -> Edit Project , sẽ mở ra .sublime-project tệp với cú pháp JSON. Nó sẽ trông giống như thế này:

{
    "folders":
    [
        {
            "follow_symlinks": true,
            "path": "C:\\Users\\MattDMo\\Development\\DB\\my_postgres_db1"
            // by default, Sublime uses double-backslashes :(
        }
    ],
}

Thêm "build_systems": mã định danh sau dấu ngoặc vuông đóng từ "folders" và đưa vào hệ thống xây dựng của bạn:

{
    "folders":
    [
        {
            "follow_symlinks": true,
            "path": "C:\\Users\\MattDMo\\Development\\DB\\my_postgres_db1"
        }
    ],
    "build_systems":
    [
        {
            "name": "my_postgres_db1",
            "cmd": ["C:/PostgreSQL/9.3/bin/psql.exe", "-W", "-U", "postgres", "-d", "my_postgres_db1", "-f", "$file"],
            // you can use either double backslashes or forward slashes on Windows. Forward is better :)
            "selector": "source.postgresql",
            "shell": true
        }
    ]
}

và bạn sẽ được hoàn thành. Bây giờ bạn đã có mẫu của mình, bạn có thể tạo bao nhiêu bản sao của tệp tùy thích, tùy chỉnh tên DB và tên hệ thống xây dựng nếu cần. "name" sẽ hiển thị trong trường Tools -> Build System và bạn có thể chọn hoàn toàn hoặc sử dụng Automatic nếu bạn không có bất kỳ hệ thống xây dựng nào khác với "selector": "source.postgresql" trong họ.

Nó thực sự liên quan đến một chút công việc cho mỗi DB mà bạn có và bạn sẽ phải nhớ chuyển đổi dự án đang hoạt động khi chuyển đổi các DB (tôi chỉ giữ một cửa sổ mở cho mỗi dự án tôi đang hoạt động), nhưng khác với điều đó nên giải quyết vấn đề của bạn. Bạn sẽ lưu ý rằng tôi đã xóa "env": {"PGPASSWORD": "password"}, dòng (dù sao thì nó cũng phải nằm trong dấu ngoặc vuông) và thay vào đó đã thêm -W tùy chọn dòng lệnh thành psql.exe để nhắc nhập mật khẩu. Không có cách nào mã hóa .sublime-project các tệp, vì vậy bất kỳ ai có thể đọc chúng sẽ thấy mật khẩu máy chủ của bạn. Tôi không biết nếu sử dụng "shell": true Nhập các biến môi trường của shell của bạn hay không, tôi nghi ngờ là không, nhưng bạn sẽ phải kiểm tra. Nó sẽ là một điều cần nhập khi chạy hệ thống xây dựng, nhưng nó sẽ làm cho hệ thống tổng thể của bạn an toàn hơn. Tất nhiên, hãy hoàn nguyên nếu bạn không muốn / cần bảo mật bổ sung, nhưng nếu đó là một máy chủ công khai thì tôi sẽ không.

Chúc bạn thành công!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. thay đổi cổng pgsql

  2. So sánh các kiểu cột cơ sở dữ liệu trong MySQL, PostgreSQL và SQLite? (Bản đồ chéo)

  3. pg Admin 4 - mật khẩu cho người dùng postgres khi cố gắng kết nối với máy chủ PostgreSQL 13

  4. Tổng hợp kết nối PostgreSQL:Phần 1 - Ưu và nhược điểm

  5. Các kết nối PostgreSQL nên được gộp chung trong một ứng dụng web Python hay tạo một kết nối mới cho mỗi yêu cầu?