国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

PostgreSQL學(xué)習(xí)筆記(一):數(shù)據(jù)庫(kù)、模式、表空間、用戶(hù)、用戶(hù)角色

這篇具有很好參考價(jià)值的文章主要介紹了PostgreSQL學(xué)習(xí)筆記(一):數(shù)據(jù)庫(kù)、模式、表空間、用戶(hù)、用戶(hù)角色。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

概念

????本文討論所說(shuō)的都是 PostgreSQL 數(shù)據(jù)庫(kù)的相關(guān)定義內(nèi)容,其中名詞以及翻譯如下:
數(shù)據(jù)庫(kù):database
模式:schema
表:table
表空間:tablespace
用戶(hù):use
用戶(hù)角色:role

數(shù)據(jù)庫(kù)(database)

PostgreSQL 通用的語(yǔ)法:

database.schema.table

????在 PostgreSQL 數(shù)據(jù)庫(kù)中,數(shù)據(jù)庫(kù)(database)可以認(rèn)為是物理層面數(shù)據(jù)集合。當(dāng)使用不同的文字編碼/排序規(guī)則等管理數(shù)據(jù)對(duì)象時(shí),不同的文字編碼規(guī)則/排序規(guī)則要?jiǎng)?chuàng)建獨(dú)立的的數(shù)據(jù)庫(kù)。PostgreSQL 關(guān)于文字編碼/排序規(guī)則等行為的默認(rèn)規(guī)則是以database為單位的。當(dāng)需要對(duì)一組數(shù)據(jù)庫(kù)表(或函數(shù)等)的并發(fā)數(shù)進(jìn)行單獨(dú)控制時(shí),需要對(duì)這些表(或函數(shù)等)放入一個(gè)新建的 database 中,PostgreSQL 對(duì)最大并發(fā)訪(fǎng)問(wèn)會(huì)話(huà)進(jìn)行單獨(dú)控制的最小單元是 database。

????當(dāng)需要對(duì)一組數(shù)據(jù)庫(kù)表(或函數(shù)等數(shù)據(jù)庫(kù)對(duì)象)的訪(fǎng)問(wèn)進(jìn)行嚴(yán)格隔離時(shí)(不僅僅是通過(guò) SQL 層面的 priviledge 來(lái)控制),在 PostgreSQL 中,????對(duì)于 Access 的控制,除了 SQL 級(jí)別的權(quán)限控制之外,可以在 pg_hba.conf 配置文件中進(jìn)行會(huì)話(huà)級(jí)別的認(rèn)證控制。
會(huì)話(huà)級(jí)別的高精度訪(fǎng)問(wèn)控制可做到:
【1】會(huì)話(huà)來(lái)源(IP地址);
【2】會(huì)話(huà)所使用的數(shù)據(jù)庫(kù)用戶(hù);
【3】會(huì)話(huà)連接目標(biāo)的Database名

模式(schema)

????模式是數(shù)據(jù)庫(kù)中的一個(gè)概念,可以將其理解為一個(gè)命名空間或目錄,不同的模式下可以有相同名稱(chēng)的表、函數(shù)等對(duì)象而不會(huì)產(chǎn)生沖突。如果沒(méi)有模式的概念,那么不同用戶(hù)或者開(kāi)發(fā)者在創(chuàng)建各自數(shù)據(jù)庫(kù)對(duì)象命名時(shí)可能會(huì)發(fā)生沖突以及相互干擾等問(wèn)題,有了模式,就可以避免這些問(wèn)題。模式的好處如下:

  • 允許多個(gè)用戶(hù)使用同一個(gè)數(shù)據(jù)庫(kù)且用戶(hù)之間不會(huì)互相干擾
  • 把數(shù)據(jù)庫(kù)對(duì)象放在不同的模式下組織成邏輯組,使數(shù)據(jù)庫(kù)對(duì)象更加便于管理
  • 第三方應(yīng)用可以放在不同的模式中,這樣就不會(huì)和其他對(duì)象的名字產(chǎn)生沖突了

????一個(gè)數(shù)據(jù)庫(kù)包含一個(gè)或者多個(gè)模式,模式中又包含了表、函數(shù)以及操作符等數(shù)據(jù)庫(kù)對(duì)象。其中的層級(jí)關(guān)系是:數(shù)據(jù)庫(kù)-模式-對(duì)象。需要注意的是,雖然能創(chuàng)建多個(gè)數(shù)據(jù)庫(kù)實(shí)例,但不能同時(shí)訪(fǎng)問(wèn)不同數(shù)據(jù)庫(kù)中的對(duì)象,當(dāng)需要訪(fǎng)問(wèn)另一個(gè)數(shù)據(jù)庫(kù)中的表或其他對(duì)象時(shí),需要重新連接到這個(gè)數(shù)據(jù)庫(kù),而模式卻沒(méi)有此限制,一個(gè)用戶(hù)在連接到一個(gè)數(shù)據(jù)庫(kù)后,就可以同時(shí)訪(fǎng)問(wèn)這個(gè)數(shù)據(jù)庫(kù)中多個(gè)模式的對(duì)象。

表空間(tablespace)

????不同的數(shù)據(jù)庫(kù)表空間有不同的定義。在 PostgreSQL 中,表空間允許在文件系統(tǒng)中定義數(shù)據(jù)庫(kù)對(duì)象存儲(chǔ)的位置,實(shí)質(zhì)上就是指定一個(gè)目錄。

應(yīng)用場(chǎng)景

  • 存儲(chǔ)磁盤(pán)沒(méi)有空間時(shí),可以使用表空間把數(shù)據(jù)存在其它地方;
  • 利用表空間對(duì)數(shù)據(jù)庫(kù)進(jìn)行性能優(yōu)化。常用來(lái)將頻繁使用的數(shù)據(jù)表或者索引放在高性能的硬盤(pán)上,而較少使用的放在普通硬盤(pán)上。

自帶表空間

  • pg_default:用來(lái)存儲(chǔ)系統(tǒng)目錄對(duì)象,用戶(hù)表、用戶(hù)表index、臨時(shí)表、臨時(shí)表index、內(nèi)部臨時(shí)表的默認(rèn)空間。
  • pg_global:用來(lái)存儲(chǔ)系統(tǒng)字典表。

pg_tblspc 存儲(chǔ)手動(dòng)創(chuàng)建表空間的軟連接信息。初始是空的,當(dāng)手動(dòng)增加表空間時(shí),該目錄下會(huì)自動(dòng)生成一個(gè)軟連接,指向表空間設(shè)定的路徑。

????一個(gè)表空間可以讓多個(gè)數(shù)據(jù)庫(kù)使用,而一個(gè)數(shù)據(jù)庫(kù)可以使用多個(gè)表空間,屬于“多對(duì)多”的關(guān)系。注意:Oracle 中一個(gè)表空間只屬于一個(gè)數(shù)據(jù)庫(kù),而一個(gè)數(shù)據(jù)庫(kù)可以使用多個(gè)表空間,屬于“一對(duì)多”的關(guān)系。

用戶(hù)(user)和 角色(role)

????在 PostgreSQL中,存在兩個(gè)容易混淆的概念:角色/用戶(hù)。之所以說(shuō)這兩個(gè)概念容易混淆,是因?yàn)閷?duì)于PostgreSQL來(lái)說(shuō),這是完全相同的兩個(gè)對(duì)象。唯一的區(qū)別是在創(chuàng)建的時(shí)候:

  1. 我用下面的psql創(chuàng)建了角色kanon:
    CREATE ROLE kanon PASSWORD ‘kanon’;
    接著我使用新創(chuàng)建的角色kanon登錄,PostgreSQL給出拒絕信息:
    FATAL: role ‘kanon’ is not permitted to log in.
    說(shuō)明該角色沒(méi)有登錄權(quán)限,系統(tǒng)拒絕其登錄。

  2. 我又使用下面的psql創(chuàng)建了用戶(hù)kanon2:
    CREATE USER kanon PASSWORD ‘kanon2’;
    接著我使用kanon2登錄,登錄成功。

????難道這兩者有區(qū)別嗎?查看文檔,又這么一段說(shuō)明:“CREATE USER is the same as CREATE ROLE except that it implies LOGIN.”----CREATE USER 除了默認(rèn)具有 LOGIN 權(quán)限之外,其他與 CREATE ROLE 是完全相同的。
????為了驗(yàn)證這句話(huà),修改 kanon 的權(quán)限,增加 LOGIN 權(quán)限:ALTER ROLE kanon LOGIN;再次用kanon登錄,成功!
那么,事情就明了了:CREATE ROLE kanon PASSWORD ‘kanon’ LOGIN 等同于 CREATE USER kanon PASSWORD ‘kanon’.
這就是 ROLE/USER 的區(qū)別。
PostgreSQL學(xué)習(xí)筆記(一):數(shù)據(jù)庫(kù)、模式、表空間、用戶(hù)、用戶(hù)角色文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-512252.html

到了這里,關(guān)于PostgreSQL學(xué)習(xí)筆記(一):數(shù)據(jù)庫(kù)、模式、表空間、用戶(hù)、用戶(hù)角色的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • postgresql|數(shù)據(jù)庫(kù)|MySQL數(shù)據(jù)庫(kù)向postgresql數(shù)據(jù)庫(kù)遷移的工具pgloader的部署和初步使用

    postgresql|數(shù)據(jù)庫(kù)|MySQL數(shù)據(jù)庫(kù)向postgresql數(shù)據(jù)庫(kù)遷移的工具pgloader的部署和初步使用

    MySQL數(shù)據(jù)庫(kù)和postgresql數(shù)據(jù)庫(kù)之間的差異并不多,這里的差異指的是對(duì)SQL語(yǔ)言的支持兩者并不大,但底層的東西差異是非常多的,例如,MySQL的innodb引擎概念,數(shù)據(jù)庫(kù)用戶(hù)管理,這些和postgresql相比是完全不同的(MySQL用戶(hù)就是用戶(hù),沒(méi)有角色,postgresql有用戶(hù),有角色,但差異不

    2024年02月14日
    瀏覽(35)
  • MySQL數(shù)據(jù)庫(kù)學(xué)習(xí)筆記(二)

    排序查詢(xún) :select 字段列表 from [表名]? order by ?[字段名1] [asc升序/desc降序,默認(rèn)值為升序],[字段名2] [排序方式];//字段名1為優(yōu)先級(jí)排序,如果字段名1有相同的,再以字段名2排序 聚合函數(shù) : count 統(tǒng)計(jì)數(shù)量(一般不選null的列) max 最大值 min 最小值 sum 總和 avg 平均值 Select

    2024年02月11日
    瀏覽(26)
  • python學(xué)習(xí)筆記(三)—數(shù)據(jù)庫(kù)篇

    數(shù)據(jù)庫(kù)編程是指在應(yīng)用程序中使用數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)進(jìn)行數(shù)據(jù)存儲(chǔ)、檢索和處理的過(guò)程。數(shù)據(jù)庫(kù)提供了一種結(jié)構(gòu)化的方式來(lái)組織和存儲(chǔ)數(shù)據(jù),使得數(shù)據(jù)的管理更加高效和可靠。 關(guān)系數(shù)據(jù)庫(kù)是一種基于關(guān)系模型的數(shù)據(jù)庫(kù)系統(tǒng),使用表(表格)來(lái)存儲(chǔ)和組織數(shù)據(jù)。每個(gè)表由

    2024年02月11日
    瀏覽(18)
  • 【數(shù)據(jù)庫(kù)】什么是 PostgreSQL?開(kāi)源數(shù)據(jù)庫(kù)系統(tǒng)

    【數(shù)據(jù)庫(kù)】什么是 PostgreSQL?開(kāi)源數(shù)據(jù)庫(kù)系統(tǒng)

    PostgreSQL 是一個(gè)開(kāi)源的對(duì)象關(guān)系數(shù)據(jù)庫(kù)系統(tǒng),本文,我們將討論 PostgreSQL、它的用途和好處。 PostgreSQL 是由 PostgreSQL Global Development Group 開(kāi)發(fā)的高級(jí) 開(kāi)源關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS) 。它作為 POSTGRES 項(xiàng)目的一部分于 1986 年在加州大學(xué)伯克利分校啟動(dòng),它最初于 1996 年 7 月 8 日發(fā)布

    2023年04月08日
    瀏覽(31)
  • postgresql數(shù)據(jù)庫(kù)定時(shí)備份到遠(yuǎn)程數(shù)據(jù)庫(kù)

    postgresql數(shù)據(jù)庫(kù)定時(shí)備份到遠(yuǎn)程數(shù)據(jù)庫(kù)

    1.老規(guī)矩,服務(wù)器目錄結(jié)構(gòu): conf目錄無(wú)內(nèi)容 profile: 其中: 最后一行 export PGPASSWORD=‘root’ 是需要備份的數(shù)據(jù)庫(kù)的密碼,因?yàn)橹苯佑?pg_dump 命令備份需要輸入密碼交互,而我們需要達(dá)到自動(dòng)備份,所以借助這種方式不需要輸入密碼 docker-compose.yml: 啟動(dòng)容器: 然后再data目錄下面

    2024年02月09日
    瀏覽(22)
  • PostgreSQL Linux操作PostgreSQL數(shù)據(jù)庫(kù)

    PostgreSQL教程 菜鳥(niǎo)教程:https://www.runoob.com/postgresql/postgresql-tutorial.html 登錄PG數(shù)據(jù)庫(kù):psql -U 用戶(hù)名(U需要大寫(xiě)) 登錄PG數(shù)據(jù)庫(kù)(指定主機(jī)、端口,并進(jìn)入指定數(shù)據(jù)庫(kù)): psql -U 用戶(hù)名 -h 127.0.0.1 -p 5432 -d 數(shù)據(jù)庫(kù)名 -U 登錄的用戶(hù)名 -h 連接的主機(jī)(默認(rèn)127.0.0.1,可替換成遠(yuǎn)程主機(jī)

    2024年02月11日
    瀏覽(28)
  • SQL學(xué)習(xí)筆記——?jiǎng)?chuàng)建數(shù)據(jù)庫(kù)和表

    SQL學(xué)習(xí)筆記——?jiǎng)?chuàng)建數(shù)據(jù)庫(kù)和表

    一、創(chuàng)建數(shù)據(jù)庫(kù)和表 1、創(chuàng)建數(shù)據(jù)庫(kù) 打開(kāi)?SSMS(Microsoft SQL Server Management Studio)→新建查詢(xún)→輸入如下圖的sql語(yǔ)句→點(diǎn)擊執(zhí)行 成功后可以看到左側(cè)數(shù)據(jù)庫(kù)中成功創(chuàng)建了“CPXS”產(chǎn)品銷(xiāo)售數(shù)據(jù)庫(kù)。對(duì)應(yīng)路徑下新增數(shù)據(jù)庫(kù)文件。 說(shuō)明: 主數(shù)據(jù)庫(kù)文件擴(kuò)展名為.mdf,表示Main Data File;

    2024年02月01日
    瀏覽(33)
  • 學(xué)習(xí)筆記-MySql數(shù)據(jù)庫(kù)介紹與連接

    學(xué)習(xí)筆記-MySql數(shù)據(jù)庫(kù)介紹與連接

    一.MySQL數(shù)據(jù)庫(kù)介紹 MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),在 WEB 應(yīng)用方面,MySQL是最好的 RDMS (Relational Database Management System,關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)) 應(yīng)用軟件,它是由瑞典MySQL AB 公司開(kāi)發(fā),目前屬于 Oracle 旗下產(chǎn)品,MySQL 是最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)中的一個(gè)。 1.特點(diǎn) 開(kāi)源,

    2024年01月19日
    瀏覽(29)
  • WPF實(shí)戰(zhàn)學(xué)習(xí)筆記08-創(chuàng)建數(shù)據(jù)庫(kù)

    創(chuàng)建文件夾 ./Context 創(chuàng)建文件 ./Context/BaseEnity.cs ./Context/Memo.cs ./Context/MyTodoContext.cs ./Context/Todo.cs ./Context/User.cs 創(chuàng)建數(shù)據(jù)對(duì)象 ./Context/BaseEnity.cs ./Context/Memo.cs ./Context/MyTodoContext.cs 創(chuàng)建數(shù)據(jù)庫(kù)DbSet ./Context/Todo.cs ./Context/User.cs 添加nuget包 Microsoft.EntityFrameworkCore.Design Shared design-time co

    2024年02月16日
    瀏覽(46)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包