Postgresql 9.0.23 Tài liệu | ||||
---|---|---|---|---|
prev | UP | Chương 17. Thiết lập kèo bóng đá hôm nay và ngày mai chủ và hoạt động | NEXT |
Trước khi bất cứ ai có thể truy cập cơ sở dữ liệu, bạn phải bắt đầu kèo bóng đá hôm nay và ngày mai. Chương trình kèo bóng đá hôm nay và ngày mai được gọi làPostgres. ThePostgresChương trình phải biết nơi tìm kèo bóng đá hôm nay và ngày mai mà nó được cho là sử dụng. Điều này được thực hiện với-DTùy chọn. Như vậy, Cách đơn giản nhất để khởi động kèo bóng đá hôm nay và ngày mai chủ là:
$postgres -d/usr/local/pgsql/data
sẽ để kèo bóng đá hôm nay và ngày mai chủ chạy ở phía trước. Cái này Phải được thực hiện trong khi đăng nhập vàoPostgreSQLTài khoản người dùng. Không có-D, kèo bóng đá hôm nay và ngày mai chủ sẽ cố gắng sử dụng thư mục dữ liệu Được đặt tên bởi biến môi trườngpgdata. Nếu biến đó cũng không được cung cấp, nó sẽ thất bại.
Thông thường tốt hơn là bắt đầuPostgresTrong nền. Đối với điều này, hãy sử dụng Cú pháp shell Unix thông thường:
$Postgres -d/usr/local/pgsql/data logfile 2 & 1 &
Điều quan trọng là lưu trữ kèo bóng đá hôm nay và ngày mai chủstdoutvàstderrxuất ra ở đâu đó, như được hiển thị ở trên. Nó sẽ giúp cho mục đích kiểm toán và chẩn đoán các vấn đề. (Nhìn thấyPhần 23.3Để biết thêm Thảo luận kỹ lưỡng về xử lý tệp nhật ký.)
ThePostgresChương trình cũng có một Số lượng các tùy chọn dòng lệnh khác. Để biết thêm thông tin, xem ThePostgresTrang tham khảo vàChương 18bên dưới.
Cú pháp shell này có thể nhanh chóng tẻ nhạt. Do đó Chương trình bao bọcPG_CTLđược cung cấp để đơn giản hóa một số Nhiệm vụ. Ví dụ:
PG_CTL START -L LogFile
sẽ khởi động kèo bóng đá hôm nay và ngày mai chủ trong nền và đặt đầu ra vào tệp nhật ký được đặt tên. The-DTùy chọn có cùng ý nghĩa ở đây vớiPostgres. PG_CTLcũng là có khả năng dừng kèo bóng đá hôm nay và ngày mai chủ.
Thông thường, bạn sẽ muốn khởi động kèo bóng đá hôm nay và ngày mai khi Giày máy tính. Các tập lệnh Autostart là dành riêng cho hệ điều hành. Có một vài phân phối vớiPostgreSQLtrong12500_12523Thư mục. Cài đặt một sẽ yêu cầu đặc quyền gốc.
Các hệ thống khác nhau có các quy ước khác nhau để khởi động Daemons khi khởi động thời gian. Nhiều hệ thống có một tệp/etc/rc.localhoặc/etc/rc.d/rc.local. Những người khác sử dụngRC.DThư mục. Dù bạn làm gì, kèo bóng đá hôm nay và ngày mai chủ Phải được chạy bởiPostgreSQLTài khoản người dùngchứ không phải bởi roothoặc bất kỳ người dùng nào khác. Do đó bạn có thể nên hình thành Các lệnh của bạn bằng cách sử dụngSu Postgres -c '...'. Ví dụ:
13198_13269
Dưới đây là một vài đề xuất cụ thể về hệ điều hành. (TRONG Mỗi trường hợp hãy chắc chắn sử dụng thư mục cài đặt thích hợp và Tên người dùng nơi chúng tôi hiển thị các giá trị chung.)
choFreeBSD, nhìn vào tài liệu13571_13602trongPostgreSQLNguồn phân bổ.
trênOpenBSD, Thêm Các dòng sau đến tệp/etc/rc.local:
Nếu [-x/usr/local/pgsql/bin/pg_ctl -a -x/usr/local/pgsql/bin/postgres]; sau đó Su -l postgres -c '/usr/local/pgsql/bin/pg_ctl start -s -l/var/postgresql/log -d/usr/local/pgsql/data' echo -n 'postgresql' fi
trênLinuxHệ thống thêm vào
/usr/local/pgsql/bin/pg_ctl start -l logfile -d/usr/local/pgsql/data
đến/etc/rc.d/rc.localhoặc nhìn vào Tệp14446_14475trongPostgreSQLNguồn phân bổ.
trênNetBSD, Sử dụngFreeBSDhoặcLinuxBắt đầu tập lệnh, tùy thuộc vào sự ưa thích.
trênSolaris, tạo một tệp gọi điện/etc/init.d/postgresqlĐiều đó chứa dòng sau:
15029_15121
Sau đó, tạo một liên kết tượng trưng cho nó trong/etc/rc3.dASS99postgresql.
Trong khi kèo bóng đá hôm nay và ngày mai chủ đang chạy, nóPIDđược lưu trữ trong tệppostmaster.pidTrong thư mục dữ liệu. Đây là được sử dụng để ngăn chặn nhiều trường hợp kèo bóng đá hôm nay và ngày mai chủ chạy trong cùng một thư mục dữ liệu và cũng có thể được sử dụng để tắt kèo bóng đá hôm nay và ngày mai chủ.
Có một số lý do phổ biến bắt đầu. Kiểm tra tệp nhật ký của kèo bóng đá hôm nay và ngày mai chủ hoặc khởi động bằng tay (mà không chuyển hướng đầu ra tiêu chuẩn hoặc lỗi tiêu chuẩn) và xem Thông báo lỗi nào xuất hiện. Dưới đây chúng tôi giải thích một số thông báo lỗi phổ biến chi tiết hơn.
Log: Không thể liên kết ổ cắm IPv4: Địa chỉ đã được sử dụng Gợi ý: Một người bán bưu điện khác đã chạy trên cổng 5432? Nếu không, hãy đợi một vài giây và thử lại. Fatal: Không thể tạo ổ cắm TCP/IP Listen
Điều này thường có nghĩa là những gì nó gợi ý: Bạn đã cố gắng bắt đầu Một kèo bóng đá hôm nay và ngày mai chủ khác trên cùng một cổng nơi một kèo bóng đá hôm nay và ngày mai đã chạy. Tuy nhiên, nếu thông báo lỗi kernel khôngĐịa chỉ đã được sử dụnghoặc một số biến thể Trong đó, có thể có một vấn đề khác nhau. Ví dụ, Cố gắng khởi động một kèo bóng đá hôm nay và ngày mai chủ trên số cổng dành riêng có thể vẽ một cái gì đó như:
$Postgres -P 666Log: Không thể liên kết ổ cắm IPv4: bị từ chối quyền Gợi ý: Một người bán bưu điện khác đã chạy trên cổng 666? Nếu không, hãy đợi một vài giây và thử lại. Fatal: Không thể tạo ổ cắm TCP/IP Listen
Một thông báo như:
Fatal: Không thể tạo phân đoạn bộ nhớ được chia sẻ: Đối số không hợp lệ Chi tiết: Cuộc gọi hệ thống không thành công là shmget (key = 5440001, size = 4011376640, 03600).
Có lẽ có nghĩa là giới hạn của hạt nhân của bạn về quy mô chia sẻ bộ nhớ nhỏ hơn khu vực làm việcPOSTGRESQLđang cố gắng tạo (4011376640 Byte trong ví dụ này). Hoặc nó có thể có nghĩa là bạn không có Hỗ trợ bộ nhớ chia sẻ theo kiểu System-V được cấu hình vào Kernel ở tất cả. Là một cách giải quyết tạm thời, bạn có thể thử bắt đầu kèo bóng đá hôm nay và ngày mai chủ có số lượng bộ đệm nhỏ hơn bình thường (Shared_buffers). Cuối cùng bạn sẽ muốn cấu hình lại hạt nhân của mình để tăng kích thước bộ nhớ được chia sẻ cho phép. Bạn cũng có thể thấy tin nhắn này Khi cố gắng khởi động nhiều kèo bóng đá hôm nay và ngày mai chủ trên cùng một kèo bóng đá hôm nay và ngày mai, nếu Tổng không gian của họ được yêu cầu vượt quá giới hạn kernel.
Một lỗi như:
Fatal: Không thể tạo Semaphores: Không còn khoảng trống trên thiết bị Chi tiết: Cuộc gọi hệ thống không thành công là Semget (5440126, 17, 03600).
khôngkhôngTrung bình Bạn đã hết dung lượng đĩa. Nó có nghĩa là giới hạn của hạt nhân của bạn đối với Số lượngSystem VSemaphores nhỏ hơn sốPostgreSQLmuốn tạo. Như trên, bạn có thể giải quyết vấn đề bằng cách khởi động kèo bóng đá hôm nay và ngày mai chủ với số lượng kết nối được phép giảm (Max_Connections), Nhưng cuối cùng bạn sẽ muốn tăng giới hạn kernel.
Nếu bạn nhận được"Hệ thống bất hợp pháp gọi"Lỗi, có khả năng bộ nhớ được chia sẻ hoặc Semaphores hoàn toàn không được hỗ trợ trong hạt nhân của bạn. Trong đó trường hợp tùy chọn duy nhất của bạn là cấu hình lại kernel để bật các tính năng này.
Chi tiết về cấu hìnhHệ thống V IPCCơ sở là đưa ra trongPhần 17.4.1.
Mặc dù các điều kiện lỗi có thể xảy ra ở phía kèo bóng đá hôm nay và ngày mai khách khá đa dạng và phụ thuộc vào ứng dụng, một vài trong số chúng có thể liên quan trực tiếp đến cách kèo bóng đá hôm nay và ngày mai chủ được bắt đầu. Điều kiện khác với những cái được hiển thị dưới đây nên được ghi lại với Ứng dụng kèo bóng đá hôm nay và ngày mai khách tương ứng.
PSQL: Không thể kết nối với kèo bóng đá hôm nay và ngày mai chủ: Kết nối bị từ chối kèo bóng đá hôm nay và ngày mai chủ đang chạy trên kèo bóng đá hôm nay và ngày mai chủ "server.joe.com" và chấp nhận Kết nối TCP/IP trên cổng 5432?
Đây là chung"Tôi không thể tìm thấy một kèo bóng đá hôm nay và ngày mai chủ để nói chuyện với "Thất bại. Nó trông giống như ở trên khi Giao tiếp TCP/IP được cố gắng. Một sai lầm phổ biến là Quên cấu hình kèo bóng đá hôm nay và ngày mai chủ để cho phép kết nối TCP/IP.
Ngoài ra, bạn sẽ nhận được điều này khi cố gắng Giao tiếp ổ cắm đến kèo bóng đá hôm nay và ngày mai chủ cục bộ:
PSQL: Không thể kết nối với kèo bóng đá hôm nay và ngày mai chủ: Không có tệp hoặc thư mục đó kèo bóng đá hôm nay và ngày mai chủ đang chạy cục bộ và chấp nhận Kết nối trên ổ cắm miền Unix "/tmp/.s.pgsql.5432"?
Dòng cuối cùng rất hữu ích trong việc xác minh rằng kèo bóng đá hôm nay và ngày mai khách là Cố gắng kết nối với đúng nơi. Nếu trên thực tế không có kèo bóng đá hôm nay và ngày mai chủ chạy ở đó, thông báo lỗi kernel thường sẽ là một trong haiKết nối bị từ chốihoặcKhông có tệp đó hoặc thư mục, như minh họa. (Điều quan trọng là phải nhận ra cái đóKết nối bị từ chốiin Bối cảnh nàykhôngCó nghĩa là kèo bóng đá hôm nay và ngày mai chủ có yêu cầu kết nối của bạn và bị từ chối Nó. Trường hợp đó sẽ tạo ra một thông báo khác, như trongkèo bóng đá c1:.) Các thông báo lỗi khác nhưkết nối hết thời giancó thể chỉ ra Các vấn đề cơ bản hơn, như thiếu mạng kết nối.