PostgreSQL(一)教程 -----从头开始

一、安装

自然,在你能开始使用PostgreSQL之前, 你必须安装它。PostgreSQL很有可能已经安装到你的节点上了, 因为它可能包含在你的操作系统的发布里, 或者是系统管理员已经安装了它。如果是这样的话, 那么你应该从操作系统的文档或者你的系统管理员那里获取有关如何访问PostgreSQL的信息。

如果你不清楚PostgreSQL是否已经安装, 或者不知道你能否用它(已经安装的)做自己的实验,那么你就可以自己安装。 这么做并不难,并且是一次很好的练习。PostgreSQL可以由任何非特权用户安装, 并不需要超级用户 (root)的权限。

二、架构基础

在我们继续之前,你应该先了解PostgreSQL的系统架构。 对PostgreSQL的部件之间如何相互作用的理解将会使本节更易理解。

在数据库术语里,PostgreSQL使用一种客户端/服务器的模型。一次PostgreSQL会话由下列相关的进程(程序)组成:

  • 一个服务器进程,它管理数据库文件、接受来自客户端应用与数据库的联接并且代表客户端在数据库上执行操作。 该数据库服务器程序叫做postgres
  • 那些需要执行数据库操作的用户的客户端(前端)应用。 客户端应用可能本身就是多种多样的:可以是一个面向文本的工具, 也可以是一个图形界面的应用,或者是一个通过访问数据库来显示网页的网页服务器,或者是一个特制的数据库管理工具。 一些客户端应用是和 PostgreSQL发布一起提供的,但绝大部分是用户开发的。

和典型的客户端/服务器应用(C/S应用)一样,这些客户端和服务器可以在不同的主机上。 这时它们通过 TCP/IP 网络联接通讯。 你应该记住的是,在客户机上可以访问的文件未必能够在数据库服务器机器上访问(或者只能用不同的文件名进行访问)。

PostgreSQL服务器可以处理来自客户端的多个并发请求。 因此,它为每个连接启动("forks")一个新的进程。 从这个时候开始,客户端和新服务器进程就不再经过最初的 postgres进程的干涉进行通讯。 因此,主服务器进程总是在运行并等待着客户端联接, 而客户端和相关联的服务器进程则是起起停停(当然,这些对用户是透明的。我们介绍这些主要是为了内容的完整性)。

三、创建一个数据库

看看你能否访问数据库服务器的第一个例子就是试着创建一个数据库。 一台运行着的PostgreSQL服务器可以管理许多数据库。 通常我们会为每个项目和每个用户单独使用一个数据库。你的站点管理员可能已经为你创建了可以使用的数据库。 如果这样你就可以省略这一步, 并且跳到下一节。

要创建一个新的数据库,在我们这个例子里叫mydb,你可以使用下面的命令:

createdb  mydb

如果看到类似下面的信息

createdb: command not found

那么就是PostgreSQL没有安装好。或者是根本没安装, 或者是你的shell搜索路径没有设置正确。尝试用绝对路径调用该命令试试:

/usr/local/pgsql/bin/createdb mydb    在你的站点上这个路径可能不一样。和你的站点管理员联系或者看看安装指导获取正确的位置。

另外一种响应可能是这样:
createdb: could not connect to database postgres: could not connect to server: No such file or directory
        Is the server running locally and accepting
        connections on Unix domain socket "/tmp/.s.PGSQL.5432"?这意味着该服务器没有启动,或者没有按照createdb预期地启动。同样, 你也要查看安装指导或者咨询管理员。

另外一个响应可能是这样:
createdb: could not connect to database postgres: FATAL:  role "joe" does not exist在这里提到了你自己的登陆名。如果管理员没有为你创建PostgreSQL用户帐号, 就会发生这些现象。(PostgreSQL用户帐号和操作系统用户帐号是不同的。) 你需要变成安装PostgreSQL的操作系统用户的身份(通常是 postgres)才能创建第一个用户帐号。 也有可能是赋予你的PostgreSQL用户名和你的操作系统用户名不同; 这种情况下,你需要使用-U选项或者使用PGUSER环境变量指定你的PostgreSQL用户名。

如果你有个数据库用户帐号,但是没有创建数据库所需要的权限,那么你会看到下面的信息:
createdb: database creation failed: ERROR:  permission denied to create database并非所有用户都被许可创建新数据库。 如果PostgreSQL拒绝为你创建数据库, 那么你需要让站点管理员赋予你创建数据库的权限。出现这种情况时请咨询你的站点管理员。 如果你自己安装了PostgreSQL, 那么你应该以你启动数据库服务器的用户身份登陆然后参考手册完成权限的赋予工作。

你还可以用其它名字创建数据库。PostgreSQL允许你在一个站点上创建任意数量的数据库。 数据库名必须是以字母开头并且小于 63 个字符长。 一个方便的做法是创建和你当前用户名同名的数据库。 许多工具假设该数据库名为缺省数据库名,所以这样可以节省你的敲键。 要创建这样的数据库,只需要键入:
createdb

果你再也不想使用你的数据库了,那么你可以删除它。 比如,如果你是数据库mydb的所有人(创建人), 那么你就可以用下面的命令删除它:
dropdb mydb

(对于这条命令而言,数据库名不是缺省的用户名,因此你就必须声明它) 。这个动作将在物理上把所有与该数据库相关的文件都删除并且不可取消, 因此做这中操作之前一定要考虑清楚。

四、访问数据库一旦你创建了数据库,你就可以通过以下方式访问它:(1)运行PostgreSQL的交互式终端程序,它被称为psql, 它允许你交互地输入、编辑和执行SQL命令。(2)使用一种已有的图形化前端工具,比如pgAdmin或者带ODBCJDBC支持的办公套件来创建和管理数据库。(3)使用多种绑定发行的语言中的一种写一个自定义的应用。你可能需要启动psql来试验本教程中的例子。 你可以用下面的命令为mydb数据库激活它:   psql mydb如果你不提供数据库名字,那么它的缺省值就是你的用户账号名字。在前面使用createdb的小节里你应该已经了解了这种方式。在psql中,你将看到下面的欢迎信息:
psql (9.6.0)
Type "help" for help.

mydb=>

最后一行也可能是:
mydb=#

这个提示符意味着你是数据库超级用户,最可能出现在你自己安装了 PostgreSQL实例的情况下。 作为超级用户意味着你不受访问控制的限制。 对于本教程的目的而言, 是否超级用户并不重要。

如果你启动psql时碰到了问题,那么请回到前面的小节。诊断createdb的方法和诊断 psql的方法很类似, 如果前者能运行那么后者也应该能运行。

psql打印出的最后一行是提示符,它表示psql正听着你说话,这个时候你就可以敲入 SQL查询到一个psql维护的工作区中。试验一下下面的命令:

psql程序有一些不属于SQL命令的内部命令。它们以反斜线开头,"\"。 欢迎信息中列出了一些这种命令。比如,你可以用下面的命令获取各种PostgreSQL的SQL命令的帮助语法:

mydb=> \h要退出psql,输入:
mydb=> \q

psql将会退出并且让你返回到命令行shell。 (要获取更多有关内部命令的信息,你可以在psql提示符上键入\?。)
 


				
时间: 2025-01-09 00:03:35

PostgreSQL(一)教程 -----从头开始的相关文章

PostgreSQL新手教程

自从MySQL被Oracle收购以后,PostgreSQL逐渐成为开源关系型数据库的首选.本文介绍PostgreSQL的安装和基本用法,供初次使用者上手.以下内容基于Debian操作系统,其他操作系统实在没有精力兼顾,但是大部分内容应该普遍适用.安装1. 首先,安装PostgreSQL客户端.  sudo apt-get install postgresql-client然后,安装PostgreSQL服务器.  sudo apt-get install postgresql2. 正常情况下,安装

opencms9.5 for postgresql 安装教程

一.下载postgresql并安装.官方下载地址:http://www.enterprisedb.com/products-services-training/pgdownload#windows 第一次下载了最新版本的结果点击安装程序直接报错,至今没解决.然后选择了Version9.0.19版本下载,下载成功点击安装即可. 二.进入官方,下载opencms9.5安装包.http://www.opencms.org/en/download/opencms.html 三.解压安装包,将解压出来的o

PostgreSQL扫盲教程

在这个链接下载PostgreSQL. 安装时,请记住您给user postgres设置的初始密码,以及默认端口号5432,后面需要使用. 再安装图形化管理UI pgadmin,可以从这个链接获得. 安装完毕之后,登录pgadmin,将服务器connection里的port修改成默认的5432: 成功连接上服务器,之后新建一个Table: 给该table维护三列: 使用Script插入一些测试数据: 测试数据插入之后,通过SELECT * 查询刚才插入的数据. 效果和使用命令行工具psql的效果一

postgreSQL安装教程 Windows

Windows 上安装 PostgreSQL 这里使用 EnterpriseDB 来下载安装,EnterpriseDB 是全球唯一一家提供基于 PostgreSQL 企业级产品与服务的厂商. 下载地址:https://www.enterprisedb.com/downloads/postgres-postgresql-downloads. 第一步:双击下载安装包,开始安装 第二步:你可以修改安装路径 一般设置为D:\Program Files\PostgreSQL就好 第三步:选择安装组件,不懂

PostgreSQL对接SequoiaDB

PostgreSQL是一款开源的SQL数据库,支持标准SQL,用户可以通过JDBC驱动连接PostgreSQL进行应用程序开发.用户通过 扩展PostgreSQL功能,让开发者可以使用SQL语句访问SequoiaDB数据库,完成SequoiaDB数据库的增.删.查.改操作.本文就针 对如何扩展PostgreSQL功能,实现PostgreSQL对接SequoiaDB进行介绍. 1 部署PostgreSQL 本教程为PostgreSQL与SequoiaDB的对接教程,所以作者建议使用者在sdbadm

使用JPA + Eclipselink操作PostgreSQL数据库

首先确保您已经安装了PostgreSQL.您可以参考我这篇文章PostgreSQL扫盲教程. 使用Eclipse创建一个新的JPA project: Platform选择EclipseLink,作为JPA的provider之一. 在Eclipse里自动生成的project如下图所示: 用下列xml的内容覆盖自动生成的xml: <?xml version="1.0" encoding="UTF-8"?> <persistence version=&q

[VCB-Studio 科普教程 2.5] 基于 PotPlayer 和 madVR 的播放器教程(已更新 XySubFilter)

Potplayer 是高清影视常用的播放器,界面简洁,功能齐全,比 MPC-HC 和 MPC-BE 更人性化:但其默认方案十分糟糕,预设过多错误,无法正确播放 10-bit 视频,一直饱受诟病.VCB-Stuido 以往发布的数篇高清教程大多偏重于 madVR,在 PotPlayer 的设置方面有些错漏.为了广大观众能正确.便捷地用 PotPlayer 享受高清影视,我们为大家带来一篇基于 PotPlayer 的高清影视全套 64-bit 工具链完整配置图文详解教程. 本教程花大力气调整 Pot

配置ogg从Oracle到PostgreSQL的同步复制json数据

标签:goldengate postgresql oracle json 测试环境说明 Oracle:Windows 8.1 + Oracle 12.2.0.1.0 + GoldenGate 12.3.0.1.2 for oracle IP:10.155.4.150 PostgreSQL:CentOS7 + postgresql 10.10-1 + Goldengate 12.2.0.1 for PostgreSQL IP: 10.155.5.178 源端 (因为Oracle的数据库和OGG安装

转载:深度学习caffe代码怎么读

原文地址:https://www.zhihu.com/question/27982282 Gein Chen的回答 Many thanks —————————————————————————————————————————— 1.学习程序的第一步,先让程序跑起来,看看结果,这样就会有直观的感受.Caffe的官网上Caffe | Deep Learning Framework 提供了很多的examples,你可以很容易地开始训练一些已有的经典模型,如LeNet.我建议先从 LeNet MNIST