簡體   English   中英

無法停止自動 PostgreSQL 在 WSL 上啟動 Ubuntu 終端打開

[英]Can't stop automatic PostgreSQL start-up on WSL Ubuntu terminal open

我開始了我的編碼之旅,我已經設置了 Ubuntu 終端(WSL2)。 我遵循了我表弟給我的這份指南,其中包括一些安裝 PostgreSQL 的說明。 我認為提前得到它是個好主意,但現在它變成了一場噩夢。 我安裝它並按照說明使其在 Ubuntu 終端啟動時自動連接到服務器。 長話短說,它讓終端需要一段時間才能啟動,把我的終端放在一些奇怪的目錄中,我什至不會使用它,所以我們決定擺脫它。 我們嘗試了一切,最后決定將其卸載。 現在在啟動時,它仍在嘗試連接到服務器或其他任何東西。 我嘗試運行代碼以使其再次自動啟動,以防它可能只是打開和關閉它,但現在它嘗試在打開時連接三次。 請查看我在下面使用的說明以及我的終端在啟動時顯示的內容。 另外,當我嘗試使用命令結束它或其他什么時,它無法執行,因為找不到 postgresql(因為我卸載了它)。 有什么想法嗎?

說明幾周后,我們將討論 SQL 和數據庫,您將需要一個名為 PostgreSQL 的開源強大且可用於生產的數據庫。

讓我們現在安裝它。

sudo apt install -y postgresql postgresql-contrib libpq-dev build-essential
sudo /etc/init.d/postgresql start
sudo -u postgres psql --command "CREATE ROLE `whoami` LOGIN createdb;"

可以配置 PostgreSQL 自動啟動,這樣就不用每次打開新終端都執行 sudo /etc/init.d/postgresql start 了:

sudo echo "`whoami` ALL=NOPASSWD:/etc/init.d/postgresql start" | sudo tee /etc/sudoers.d/postgresql
sudo chmod 440 /etc/sudoers.d/postgresql
echo "sudo /etc/init.d/postgresql start" >> ~/.zshrc

錯誤代碼:

sudo: /etc/init.d/postgresql: command not found
sudo: /etc/init.d/postgresql: command not found
sudo: /etc/init.d/postgresql: command not found
➜  /home

只需從.zshrc中刪除有問題的行。

讓我補充一點,Windows 的 Linux 仿真不能用於嚴肅的數據庫工作,因為它沒有實現重要的系統調用fsync來持久化數據。 任何操作系統崩潰都會導致數據損壞。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM