91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Postgresql服務部署

發布時間:2020-07-09 20:16:03 來源:網絡 閱讀:2690 作者:西索oO 欄目:數據庫

PostgreSQL 是一種非常復雜的對象-關系型數據庫管理系統(ORDBMS),也是目前功能最強大,特性最豐富和最復雜的自由軟件數據庫系統。
os:centos6.5 x64

ip:192.168.85.130

hostname: vm2.lansgg.com

pg 版本:postgresql-9.2.4.tar.bz2


一、yum安裝
二、源碼安裝

三、系統數據庫



1、yum安裝

[root@vm2 ~]# wget 
[root@vm2 ~]# rpm -vhi pgdg-redhat92-9.2-8.noarch.rpm
[root@vm2 ~]# yum install postgresql92-server postgresql92-contrib -y

1.2、初始化并啟動數據庫

[root@vm2 ~]# /etc/init.d/postgresql-9.2 initdb
正在初始化數據庫:                                         [確定]
[root@vm2 ~]# /etc/init.d/postgresql-9.2 start
啟動 postgresql-9.2 服務:                                 [確定]
[root@vm2 ~]# echo "PATH=/usr/pgsql-9.2/bin:$PATH" >> /etc/profile
[root@vm2 ~]# echo "export PATH" >> /etc/profile

1.3、測試

[root@vm2 ~]# su - postgres
-bash-4.1$ psql
psql (9.2.19)
輸入 "help" 來獲取幫助信息.

postgres=# \l
                                     資料庫列表
   名稱    |  擁有者  | 字元編碼 |  校對規則   |    Ctype    |       存取權限        
-----------+----------+----------+-------------+-------------+-----------------------
 postgres  | postgres | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | 
 template0 | postgres | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
 template1 | postgres | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
(3 行記錄)

postgres=#

1.4、修改管理員密碼

修改PostgreSQL 數據庫用戶postgres的密碼(注意不是linux系統帳號)
PostgreSQL 數據庫默認會創建一個postgres的數據庫用戶作為數據庫的管理員,默認密碼為空,我們需要修改為指定的密碼,這里設定為’postgres’。

postgres=# select * from pg_shadow;
 usename  | usesysid | usecreatedb | usesuper | usecatupd | userepl | passwd | valuntil | useconfig 
----------+----------+-------------+----------+-----------+---------+--------+----------+-----------
 postgres |       10 | t           | t        | t         | t       |        |          | 
(1 行記錄)

postgres=#  ALTER USER postgres WITH PASSWORD 'postgres';
ALTER ROLE
postgres=# select * from pg_shadow;
 usename  | usesysid | usecreatedb | usesuper | usecatupd | userepl |               passwd                | valuntil | useconfig 
----------+----------+-------------+----------+-----------+---------+-------------------------------------+----------+-----------
 postgres |       10 | t           | t        | t         | t       | md53175bce1d3201d16594cebf9d7eb3f9d |          | 
(1 行記錄)

postgres=#

1.5、創建測試數據庫

postgres=# create database testdb;
CREATE DATABASE
postgres=# \c testdb;
您現在已經連線到數據庫 "testdb",用戶 "postgres".
testdb=#

1.6、創建測試表

testdb=#  create table test (id integer, name text);
CREATE TABLE
testdb=# insert into test values(1,'lansgg');
INSERT 0 1
testdb=# select * from test;
 id |  name  
----+--------
  1 | lansgg
(1 行記錄)

1.7、查看表結構

testdb=# \d test;
  資料表 "public.test"
 欄位 |  型別   | 修飾詞 
------+---------+--------
 id   | integer | 
 name | text    |

1.8、修改PostgresSQL 數據庫配置實現遠程訪問

修改postgresql.conf 文件

如果想讓PostgreSQL 監聽整個網絡的話,將listen_addresses 前的#去掉,并將 listen_addresses = 'localhost' 改成 listen_addresses = '*'
修改客戶端認證配置文件pg_hba.conf

[root@vm2 ~]# vim /var/lib/pgsql/9.2/data/pg_hba.conf
host    all             all             127.0.0.1/32            ident
host    all             all             all                     md5
[root@vm2 ~]# /etc/init.d/postgresql-9.2 restart
停止 postgresql-9.2 服務:                                 [確定]
啟動 postgresql-9.2 服務:                                 [確定]
[root@vm2 ~]#

2、源碼安裝

停止上面yum安裝的pgsql服務,下載PostgreSQL 源碼包

[root@vm2 ~]# /etc/init.d/postgresql-9.2 stop
停止 postgresql-9.2 服務:                                 [確定]
[root@vm2 ~]# wget 
[root@vm2 ~]# tar jxvf postgresql-9.2.4.tar.bz2
[root@vm2 ~]# cd postgresql-9.2.4

查看INSTALL 文件
more INSTALL
INSTALL 文件中Short Version 部分解釋了如何安裝PostgreSQL 的命令,Requirements 部分描述了安裝PostgreSQL 所依賴的lib,比較長,先configure 試一下,如果出現error,那么需要檢查是否滿足了Requirements 的要求。
開始編譯安裝PostgreSQL 數據庫。

[root@vm2 postgresql-9.2.4]# ./configure
[root@vm2 postgresql-9.2.4]# gmake
[root@vm2 postgresql-9.2.4]# gmake install
[root@vm2 postgresql-9.2.4]# echo "PGHOME=/usr/local/pgsql" >> /etc/profile
[root@vm2 postgresql-9.2.4]# echo "export PGHOME" >> /etc/profile
[root@vm2 postgresql-9.2.4]# echo "PGDATA=/usr/local/pgsql/data" >> /etc/profile
[root@vm2 postgresql-9.2.4]# echo "export PGDATA" >> /etc/profile
[root@vm2 postgresql-9.2.4]# echo "PATH=$PGHOME/bin:$PATH" >> /etc/profile
[root@vm2 postgresql-9.2.4]# echo "export PATH" >> /etc/profile
[root@vm2 postgresql-9.2.4]# source /etc/profile
[root@vm2 postgresql-9.2.4]#

2.2、初始化數據庫

useradd -d /opt/postgres postgres              ######如果沒有此賬戶就創建,前面yum安裝的時候已經替我們創建了
[root@vm2 postgresql-9.2.4]# mkdir /usr/local/pgsql/data
[root@vm2 postgresql-9.2.4]# chown postgres.postgres /usr/local/pgsql/data/
[root@vm2 postgresql-9.2.4]# su - postgres

-bash-4.1$ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data/
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.

The database cluster will be initialized with locale "zh_CN.UTF-8".
The default database encoding has accordingly been set to "UTF8".
initdb: could not find suitable text search configuration for locale "zh_CN.UTF-8"
The default text search configuration will be set to "simple".

fixing permissions on existing directory /usr/local/pgsql/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 32MB
creating configuration files ... ok
creating template1 database in /usr/local/pgsql/data/base/1 ... ok
initializing pg_authid ... ok
initializing dependencies ... ok
creating system views ... ok
loading system objects' descriptions ... ok
creating collations ... ok
creating conversions ... ok
creating dictionaries ... ok
setting privileges on built-in objects ... ok
creating information schema ... ok
loading PL/pgSQL server-side language ... ok
vacuuming database template1 ... ok
copying template1 to template0 ... ok
copying template1 to postgres ... ok

WARNING: enabling "trust" authentication for local connections
You can change this by editing pg_hba.conf or using the option -A, or
--auth-local and --auth-host, the next time you run initdb.

Success. You can now start the database server using:

    /usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data
or
    /usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start

-bash-4.1$

1.3、添加到系統服務

-bash-4.1$ exit
logout
[root@vm2 postgresql-9.2.4]#  cp /root/postgresql-9.2.4/contrib/start-scripts/linux /etc/init.d/postgresql
[root@vm2 postgresql-9.2.4]# chmod +x /etc/init.d/postgresql
[root@vm2 postgresql-9.2.4]# /etc/init.d/postgresql start
Starting PostgreSQL: ok
[root@vm2 postgresql-9.2.4]# chkconfig --add postgresql
[root@vm2 postgresql-9.2.4]# chkconfig postgresql on
[root@vm2 postgresql-9.2.4]#

1.4、測試使用

[root@vm2 postgresql-9.2.4]# su - postgres
-bash-4.1$ psql -l
                                  List of databases
   Name    |  Owner   | Encoding |   Collate   |    Ctype    |   Access privileges   
-----------+----------+----------+-------------+-------------+-----------------------
 postgres  | postgres | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | 
 template0 | postgres | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
 template1 | postgres | UTF8     | zh_CN.UTF-8 | zh_CN.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
(3 rows)

-bash-4.1$ psql
psql (9.2.4)
Type "help" for help.

postgres=# create database testdb;
CREATE DATABASE
postgres=# \c testdb;
You are now connected to database "testdb" as user "postgres".
testdb=# create table test(id int,name text,age int);
CREATE TABLE
testdb=# \d test
     Table "public.test"
 Column |  Type   | Modifiers 
--------+---------+-----------
 id     | integer | 
 name   | text    | 
 age    | integer | 

testdb=# insert into test values(1,'lansgg',25);
INSERT 0 1
testdb=# select * from test;
 id |  name  | age 
----+--------+-----
  1 | lansgg |  25
(1 row)

testdb=#

3、系統數據庫


 在創建數據集簇之后,該集簇中默認包含三個系統數據庫template1、template0和postgres。其中template0和postgres都是在初始化過程中從template1拷貝而來的。

  template1和template0數據庫用于創建數據庫。PostgreSQL中采用從模板數據庫復制的方式來創建新的數據庫,在創建數據庫的命令中可以用“-T”選項來指定以哪個數據庫為模板來創建新數據庫。

  template1數據庫是創建數據庫命令默認的模板,也就是說通過不帶“-T”選項的命令創建的用戶數據庫是和template1一模一樣的。template1是可以修改的,如果對template1進行了修改,那么在修改之后創建的用戶數據庫中也能體現出這些修改的結果。template1的存在允許用戶可以制作一個自定義的模板數據庫,在其中用戶可以創建一些應用需要的表、數據、索引等,在日后需要多次創建相同內容的數據庫時,都可以用template1作為模板生成。

  由于template1的內容有可能被用戶修改,因此為了滿足用戶創建一個“干凈”數據庫的需求,PostgreSQL提供了template0數據庫作為最初始的備份數據,當需要時可以用template0作為模板生成“干凈”的數據庫。

  而第三個初始數據庫postgres用于給初始用戶提供一個可連接的數據庫,就像Linux系統中一個用戶的主目錄一樣。

  上述系統數據庫都是可以刪除的,但是兩個模板數據庫在刪除之前必須將其在pg_database中元組的datistemplate屬性改為FALSE,否則刪除時會提示“不能刪除一個模板數據庫”

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

黑河市| 喜德县| 延长县| 高碑店市| 赤峰市| 建阳市| 武宁县| 灵璧县| 桐庐县| 密云县| 昂仁县| 齐河县| 沿河| 许昌县| 方山县| 隆昌县| 海门市| 攀枝花市| 屏东县| 黑山县| 县级市| 莱阳市| 大渡口区| 五峰| 房山区| 稷山县| 牡丹江市| 宁都县| 镇江市| 东源县| 开远市| 边坝县| 诸城市| 七台河市| 天津市| 洞口县| 紫金县| 榆林市| 高青县| 仪陇县| 河东区|