Ubuntu安装、使用postgresql数据库

本文涉及的产品
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
简介:

Ubuntu安装、使用postgresql数据库


$ sudo apt-get install postgresql  (端口为5432)


$ sudo apt-get install postgresql-contrib   (这个主要是为了生成oid2name)


$ sudo passwd postgres   (postgres账号的家目录为:/var/lib/postgresql)


安装postgres图形化客户端


$ sudo apt-get install pgadmin3    (调用直接在命令行里输入pgadmin3即可)



postgres的主要配置文件


/etc/postgresql/9.1/main/下的pg_hba.conf(连接数据库的身份验证方式)和postgresql.conf(数据库的


配置文件)  (建议修改前都备份下)




postgresql的bin命令路径:


/usr/lib/postgresql/9.1/bin  


默认不写绝对路径无法调用,可做下软链接:


# ln -s /usr/lib/postgresql/9.1/bin/* /usr/bin/   (有些本来就有,无所谓的)



# mkdir -p /home/postgresql/data   (也可不调,默认路径为:/var/lib/postgresql/9.1/main/base)


# chown postgres:postgres /home/postgresql/data


# su postgres


$ initdb -D /home/postgresql/data



数据库存放路径:/home/postgresql/data/base  (这里显示的是数据库名的OID)


如要查看OID对应的数据库名,在base目录下执行oid2name即可




开启postgresql  log


# vi /home/postgresql/data/postgres.conf (log部分默认均为注释)


按a或i进入编辑模式


log_destination = 'stderr'


logging_collector = on


log_directory = 'pg_log'   (绝对路径为:/var/lib/postgresql/9.1/main/)


log_filename = 'postgresql-%y-%m-%d_%H%M%S.log'


log_rotation_size = 10MB


按Esc键退出编辑模式


:wq  (保存并退出)




允许从其它主机进行登录:


# vi /home/postgresql/data/pg_hba.conf


按a或i进入编辑模式


host  all all   10.0.0.3/32    md5  (md5为需要密码,trust为不需要密码)


按Esc键退出编辑模式


:wq  (保存并退出)



其它主机登录:


# psql -h 10.0.0.2 -p 5432 mingdb ming





启动、关闭postgresql


# service postgresql restart    (-D的方法启动的话就只能杀进程了)




$ postgres -D /home/postgresql/data (关闭可用kill)



$ pg_ctl -D /home/postgresql/data start   (关闭是stop)



注:启动后如需做其他操作建议另外打开个窗口(如ctrl+z的话会造成psql无法登陆)



在postgres账号命令行下操作步骤如下:


创建账号


$ createuser -A -D -P -R user1


密码


创建账号方法2:


$ createuser user1 with password '****'



修改账号密码命令:


$ alter user1 password 'xxxx'



删除账号:


$ dropuser user1


注:


-A 不允许创建其他用户

-D 不允许创建数据库

-P 创建密码

-R 不允许创建角色



创建数据库ming


$ createdb ming


删除数据库ming


$ dropdb ming


进入数据库ming


$ psql ming


进入后界面如下


ming=#




在数据库下操作步骤如下:



$ psql -U postgres  (在postgres账号下可直接psql)



为postgres账号设置密码(注意区分系统账号postgres和数据库里postgres账号):


postgres=# \password postgres  


密码



创建账号



postgres=# create user "ming" with password '123456' nocreatedb;


建立数据库并指定owner


postgres=# create database "mingdb" with owner="ming";




\l:列出已有数据库的Owner,Encoding等信息


\c  数据库名:切换数据库


\d:查看当前数据库中已有的表


\d 表名:查看表结构


\du:列出所有用户


\q:退出


查看数据表内容(同mysql):


select * from aa;

本文转自linux博客51CTO博客,原文链接http://blog.51cto.com/yangzhiming/1601584如需转载请自行联系原作者

yangzhimingg
相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
1月前
|
NoSQL 关系型数据库 MySQL
微服务架构下的数据库选择:MySQL、PostgreSQL 还是 NoSQL?
在微服务架构中,数据库的选择至关重要。不同类型的数据库适用于不同的需求和场景。在本文章中,我们将深入探讨传统的关系型数据库(如 MySQL 和 PostgreSQL)与现代 NoSQL 数据库的优劣势,并分析在微服务架构下的最佳实践。
|
18天前
|
存储 关系型数据库 MySQL
一个项目用5款数据库?MySQL、PostgreSQL、ClickHouse、MongoDB区别,适用场景
一个项目用5款数据库?MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景比较
|
1月前
|
SQL 关系型数据库 数据库
PostgreSQL数据库报错 ERROR: multiple default values specified for column "" of table "" 如何解决?
PostgreSQL数据库报错 ERROR: multiple default values specified for column "" of table "" 如何解决?
224 59
|
15天前
|
SQL 关系型数据库 数据库
使用 PostgreSQL 和 Python 实现数据库操作
【10月更文挑战第2天】使用 PostgreSQL 和 Python 实现数据库操作
|
27天前
|
Oracle NoSQL 关系型数据库
主流数据库对比:MySQL、PostgreSQL、Oracle和Redis的优缺点分析
主流数据库对比:MySQL、PostgreSQL、Oracle和Redis的优缺点分析
106 2
|
1月前
|
缓存 关系型数据库 数据库
如何优化 PostgreSQL 数据库性能?
如何优化 PostgreSQL 数据库性能?
32 2
|
18天前
|
存储 关系型数据库 MySQL
四种数据库对比MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景
四种数据库对比 MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景
|
1月前
|
关系型数据库 分布式数据库 数据库
开源云原生数据库PolarDB PostgreSQL 15兼容版本正式发布
PolarDB进行了深度的内核优化,从而实现以更低的成本提供商业数据库的性能。
|
2月前
|
关系型数据库 MySQL Linux
在Linux中,如何配置数据库服务器(如MySQL或PostgreSQL)?
在Linux中,如何配置数据库服务器(如MySQL或PostgreSQL)?
|
1月前
|
关系型数据库 数据库 网络虚拟化
Docker环境下重启PostgreSQL数据库服务的全面指南与代码示例
由于时间和空间限制,我将在后续的回答中分别涉及到“Python中采用lasso、SCAD、LARS技术分析棒球运动员薪资的案例集锦”以及“Docker环境下重启PostgreSQL数据库服务的全面指南与代码示例”。如果你有任何一个问题的优先顺序或需要立即回答的,请告知。
55 0