
还原需要原先对数据库进行过备份,才能从备份恢复,如果没有备份过,那是无法还原的。
恢复数据库,指令如下:
pg_restoreexe --host localhost --port 5432 --username "postgres" --dbname "symbolmcnew" --no-password --verbose "databasenamebackup"
指令解释:如上命令,psql是恢复数据库命令,localhost是要恢复到哪个数据库的地址,当然你可以写上ip地址,也就是说能远程恢复(必须保证 数据库允许外部访问的权限哦~);postgres 就是要恢复到哪个数据库的用户;symbolmcnew 是要恢复到哪个数据库,databasenamebackup指备份文件。
PostgreSQL是现在比较流行的数据库之一,这个起源于伯克利(BSD)的数据库研究计划目前已经衍生成一项国际开发项目,并且有非常广泛的用户。据我了解国内四大国产数据库,其中三个都是基于PostgreSQL开发的。并且,因为许可证的灵活,任何人都可以以任何目的免费使用,修改,和分发 PostgreSQL,不管是私用,商用,还是学术研究使用。本文只是简单介绍一下postgresql的安装和简单的使用,语法方面涉及的比较少,以方便新手上路为目的。
1系统环境和安装方法 ;
PostgreSQL的安装方法比较灵活,可以用源码包安装,也可以用您使用的发行版所带的软件包来安装,还可以采用在线安装……
11 系统环境:Ubuntu Linux 704 ;Fedora;Slackware;
12 安装;
Ubuntu下安装软件其实很简单,用新立得软件包管理器搜索psql便能查到postgresql-client-82(同时可以搜到81版本,哪一个都可以),选中-应用即可。或者在终端下输入
xiaop@localhost$ sudo apt-get install postgresql-82
Slackware下安装:请到 linuxpackagesnet 上查找您所用系统的对应版本,用pkginstall 来安装,或您安装slap-get 工具,在线自动安装;要用到root权限,可以通用sudo。关于su和sudo的参考;《Linux 系统中的超级权限的控制》 安装postgresql的软件包,可用下面的办法 ;
xiaop@localhost# pkginstall posttgz
或
xiaop@localhost# slapt-get --install postgresql-824
在Fedora中,您可以用软件包在线安装工具来安装注:这样就安装好了PostgreSQL 82了,该安装将自动创建一个缺省的数据库集群(pgsqldborg中的译法)“main”,且生成一个数据库超级用户postgres。
2 启动PostgreSQL 数据库服务器;
21 在流行Linux发行版的启动方法;
在Ubuntu系统中,服务器启动脚本放在 /etc/initd目录中,您可以用下面的方法来启动,对于Fedora和Gentoo 也是类似的;
xiaop@localhost~# /etc/initd/postgresql-82 start 注:启动;
xiaop@localhost~# /etc/initd/postgresql-82 restart 注:重启;
xiaop@localhost~# /etc/initd/postgresql-82 stop 注:停止;
xiaop@localhost~# /etc/initd/postgresql-82 status 注:查看状态;
在Slackware中,PostgreSQL的启动脚本放在 /etc/rcd目录中,如果您用从linuxpackagesnet 上下载的软件包或在线安装的软件包;
xiaop@localhost~# /etc/rcd/rcpostgres start
如果您用源码包编译安装,启动PostgreSQL,请查看PostgreSQL官方文档;
22 关于 PostgreSQL启动和存储目录;
启动PostgreSQL服务器时,一般是以postgres 用户来启动的,自编译安装的除外;对于数据库的存储一般是放在/var/lib中的相关目录,比如 /var/lib/pgsql或 /var/lib/postgresql/82/main/ 目录等;不同的发行版可能不太一样,不过还是大同小异,您可以通过修改数据存储位置把数据库存在其它地方;
3创建用户
添加用户命令格式。
createuser 是 SQL 命令 CREATE USER的封装。
命令:createuser [-a] [-A] [-d] [-D] [-e] [-P] [-h 主机名] [-p port] 用户名
参数说明:
[-a]:允许创建其他用户,相当于创建一个超级用户;
[-A]:不允许此用户创建其他用户;
[-d]:允许此用户创建数据库;
[-D]:不允许此用户创建数据库;
[-e]:将执行过程显示到Shell上;
[-P]:创建用户时,同时设置密码;
[-h 主机名]:为某个主机上的Postgres创建用户;
[-p port]:与-h参数一同使用,指定主机的端口。
31添加用户;
311不带参数的创建用户;
xiaop@localhost~$ createuser testuser
Shall the new user be allowed to create databases (y/n) n --------是否可以创建数据库:否
Shall the new user be allowed to create more new users (y/n) n ---------是否可以创建新用户:否
CREATE USER
注:不带参数创建用户时,Postgres会询问此用户的权限,上面的例子创建了一个普通用户;
312 为指定的主机和端口上创建用户 ;
xiaop@localhost~$ createuser -h 172281851 -p 5000 -D -A -e testuser
CREATE USER joe NOCREATEDB NOCREATEUSER;
CREATE USER
注:这个命令为主机172281851的5000端口创建用户testuser, 此用户不可以创建数据库和其他用户。
313创建超级用户;
xiaop@localhost~$ createuser -P -d -a -e testuser
Enter password for new user: testuser
Enter it again: testuser
CREATE USER joe PASSWORD 'testuser' CREATEDB CREATEUSER;
CREATE USER
注:这个命令在本地创建一个超级用户(-a),可以创建数据库(-d), 同时要求设置密码。
32 删除用户:
命令:dropuser [-i] [-h] [-p] [-e] 用户名 参数说明:
[ -i]:删除用户前,要求确认;
[-h 主机名]:删除某个主机上的Postgres用户;
[-p port]:与-h参数一同使用,指定主机的端口;
[-e]:将执行过程显示到Shell上。
321 删除本地的Postgres用户;
xiaop@localhost~$ dropuser testuser
DROP USER
322 删除远程Postgres服务器上的用户;
xiaop@localhost~$ dropuser -p 5000 -h 172281851 -i -e testuser
User "testuser" and any owned databases will be permanently deleted
Are you sure (y/n) y
DROP USER "testuser"
DROP USER
注:此命令删除主机172281851(-h)的5000端口(-p)的用户testuser,并且需要确认(-i);
4 创建和删除数据库;
41创建数据库
看看您能否访问数据库服务器的第一个例子就是试着创建一个数据库;
要创建一个新的数据库,在我们这个例子里叫 mydb,您可以使用下面的命令:
xiaop@localhost~$ createdb mydb
它应该生成下面这样的响应:
CREATE DATABASE
如果这样,那么这一步就成功了,如果您看到类似下面这样的信息
createdb: command not found
那么就是PostgreSQL没有安装好,要么是就根本没装上;
您还可以用其它名字创建数据库。 PostgreSQL 允许您在一个节点上创建任意数量的数据库。 数据库名必须是以字母开头并且小于 63 个字符长。 一个方便的做法是创建和您当前用户名同名的数据库。 许多工具假设该数据库名为缺省数据库名,所以这样可以节省您的敲键。要创建这样的数据库,只需要键入 :
xiaop@localhost~$ createdb
可以。
PL/SQL developer这个工具是专门用于Oracle数据库的开发。对于sqlserver的开发,请使用sqlserver自带的Management Studio。
但是在管理工具下ODBC数据源界面里只能选择64位的PostgreSQL驱动,32位竟然没有。如此一来,一些32位的应用软件就没法利用ODBC链接到数据库了(尝试选取地话,会报告选取的数据源(64位)和应用程序的系统构架(32位)不一致而失败)。
简介
SQL语言1974年由Boyce和Chamberlin提出,并首先在IBM公司研制的关系数据库系统SystemR上实现。由于它具有功能丰富、使用方便灵活、语言简洁易学等突出的优点,深受计算机工业界和计算机用户的欢迎。
1980年10月,经美国国家标准局(ANSI)的数据库委员会X3H2批准,将SQL作为关系数据库语言的美国标准,同年公布了标准SQL,此后不久,国际标准化组织(ISO)也作出了同样的决定。
以上就是关于postgresql 怎么还原数据库全部的内容,包括:postgresql 怎么还原数据库、可以不安装postgresql,只安装psql吗、psqlodbc可以卸载吗等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)