日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

PostgreSQL创建一个数据库

發(fā)布時(shí)間:2025/5/22 数据库 59 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PostgreSQL创建一个数据库 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

看看你能否訪問數(shù)據(jù)庫服務(wù)器的第一個(gè)例子就是試著創(chuàng)建一個(gè)數(shù)據(jù)庫。一臺(tái)運(yùn)行著的 PostgreSQL 服務(wù)器可以管理許多數(shù)據(jù)庫。通常我們會(huì)為每個(gè)項(xiàng)目和每個(gè)用戶單獨(dú)使用一個(gè)數(shù)據(jù)庫。

節(jié)點(diǎn)管理員可能已經(jīng)為你創(chuàng)建了可以使用的數(shù)據(jù)庫。他應(yīng)該已經(jīng)告訴你這個(gè)數(shù)據(jù)庫的名字。如果這樣你就可以省略這一步,并且跳到下一節(jié)。

要?jiǎng)?chuàng)建一個(gè)新的數(shù)據(jù)庫(在我們這個(gè)例子里叫 mydb),你可以使用下面的命令:

$ createdb mydb

它應(yīng)該生成下面這樣的響應(yīng):

CREATE DATABASE

如果這樣,那么這一步就成功了,你就可以忽略本節(jié)余下的部分了。

如果你看到類似下面這樣的信息:

createdb: command not found

那么就是 PostgreSQL 沒有安裝好:要么是就根本沒裝上、要么是搜索路徑?jīng)]有設(shè)置正確。嘗試用絕對(duì)路徑調(diào)用該命令試試:

$ /usr/local/pgsql/bin/createdb mydb

在你的節(jié)點(diǎn)上這個(gè)路徑可能不一樣。請(qǐng)和管理員聯(lián)系或者看看安裝指導(dǎo)以獲取正確的位置。

另外一種響應(yīng)可能是這樣:

createdb: could not connect to database postgres: could not connect to server: No such file or directoryIs the server running locally and acceptingconnections on Unix domain socket "/tmp/.s.PGSQL.5432"?

這意味著服務(wù)器沒有啟動(dòng),或者沒有在 createdb 預(yù)期的地方啟動(dòng)。同樣,你也要檢查安裝指導(dǎo)或者找管理員。

另外一個(gè)響應(yīng)可能是這樣:

createdb: could not connect to database postgres: FATAL: role "joe" does not exist

在這里提到了你自己的登陸名。如果管理員沒有為你創(chuàng)建 PostgreSQL 用戶帳號(hào),就會(huì)發(fā)生這些現(xiàn)像。PostgreSQL 用戶帳號(hào)和操作系統(tǒng)用戶帳號(hào)是不同的。如果你就是管理員,參閱章18以獲取創(chuàng)建用戶帳號(hào)的幫助。你需要變成安裝 PostgreSQL 的操作系統(tǒng)用戶的身份(通常是 postgres)才能創(chuàng)建第一個(gè)用戶帳號(hào)。也有可能是賦予 PostgreSQL 用戶名和操作系統(tǒng)用戶名不同;這種情況下,你需要使用 -U 開關(guān)或者使用 PGUSER 環(huán)境變量聲明 PostgreSQL 用戶名。

如果你有個(gè)數(shù)據(jù)庫用戶帳號(hào),但是沒有創(chuàng)建數(shù)據(jù)庫所需要的權(quán)限,那么你會(huì)看到下面的東西:

createdb: database creation failed: ERROR: permission denied to create database

并非所有用戶都經(jīng)過了創(chuàng)建新數(shù)據(jù)庫的授權(quán)。如果 PostgreSQL 拒絕為你創(chuàng)建數(shù)據(jù)庫,那么你需要讓節(jié)點(diǎn)管理員賦予你創(chuàng)建數(shù)據(jù)庫的權(quán)限。出現(xiàn)這種情況時(shí)請(qǐng)咨詢你的節(jié)點(diǎn)管理員。如果你自己安裝了 PostgreSQL ,那么你應(yīng)該以你啟動(dòng)數(shù)據(jù)庫服務(wù)器的用戶身份登陸然后參考手冊(cè)完成權(quán)限的賦予工作。[1]

你還可以用其它名字創(chuàng)建數(shù)據(jù)庫。PostgreSQL 允許你在一個(gè)節(jié)點(diǎn)上創(chuàng)建任意數(shù)量的數(shù)據(jù)庫。數(shù)據(jù)庫名必須是以字母開頭并且小于 63 個(gè)字符長。一個(gè)方便的做法是創(chuàng)建和你當(dāng)前用戶名同名的數(shù)據(jù)庫。許多工具假設(shè)它為缺省的數(shù)據(jù)庫名,所以這樣可以節(jié)省敲鍵。要?jiǎng)?chuàng)建這樣的數(shù)據(jù)庫,只需要鍵入:

$ createdb

如果你再也不想使用你的數(shù)據(jù)庫了,那么你可以刪除它。比如,如果你是數(shù)據(jù)庫 mydb 的屬主(創(chuàng)建人),那么你就可以用下面的命令刪除它:

$ dropdb mydb

對(duì)于這條命令而言,數(shù)據(jù)庫名不是缺省的用戶名,你必須明確聲明它。這個(gè)動(dòng)作物理上將所有與該數(shù)據(jù)庫相關(guān)的文件都刪除并且不可恢復(fù),因此做這件事之前一定要想清楚。

更多關(guān)于 createdb 和 dropdb 的信息可以在 createdbdropdb 小節(jié)找到。

注意

[1]

為什么這么干就行了? 解釋如下:PostgreSQL 用戶名是和操作系統(tǒng)用戶賬號(hào)分開的。如果你與一個(gè)數(shù)據(jù)庫連接,你可以指定以哪個(gè) PostgreSQL 用戶名進(jìn)行連接;如果你不指定,那么缺省就是你當(dāng)前的操作系統(tǒng)賬號(hào)。如果這樣,那么總有一個(gè)與操作系統(tǒng)用戶同名的 PostgreSQL 用戶賬號(hào)用于啟動(dòng)服務(wù)器,并且通常這個(gè)用戶都有創(chuàng)建數(shù)據(jù)庫的權(quán)限。如果你不想以該用戶身份登陸,那么你也可以在任何地方聲明一個(gè) -U 選項(xiàng)來選擇一個(gè)連接時(shí)使用的 PostgreSQL 用戶名。

轉(zhuǎn)載于:https://www.cnblogs.com/wolaiye320/p/5540602.html

《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的PostgreSQL创建一个数据库的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。