在docker中快速使用各个版本的PostgreSQL数据库
安装概述
PG安装方法很多,和MySQL类似,给用户提供很大的选择空间。如:RPM包安装(在线、离线)、源码编译安装、系统自带、二进制、NDB安装等。
https://www.postgresql.org/
https://yum.postgresql.org/rpmchart.php
https://yum.postgresql.org/11/redhat/rhel-6-x86_64/repoview/postgresqldbserver11.group.html
https://www.postgresql.org/ftp/source/
打开 PostgreSQL 官网 https://www.postgresql.org/,点击菜单栏上的 Download ,可以看到这里包含了很多平台的安装包,包括 Linux、Windows、Mac OS等 。
各个安装包:https://www.postgresql.org/ftp/source/
Linux 我们可以看到支持 Ubuntu 和 Red Hat 等各个平台,点击具体的平台链接,即可查看安装方法:
点击上图中的 file browser,我们还能下载 PostgreSQL 最新的源码。
Docker直接使用
Docker Hub的官网地址:https://hub.docker.com/_/postgres
GitHub的地址:https://github.com/docker-library/postgres
-- 拉取所有镜像 docker pull postgres:9.4 docker pull postgres:9.6 docker pull postgres:10 docker pull postgres:11 docker pull postgres:12 docker pull postgres:13 docker pull postgres:13.3 -- 创建各个版本的Docker容器 docker rm -f lhrpg94 lhrpg96 lhrpg10 lhrpg11 lhrpg12 lhrpg13 docker run --name lhrpg94 -h lhrpg94 -d -p 54321:5432 -e POSTGRES_PASSWORD=lhr -e TZ=Asia/Shanghai postgres:9.4 docker run --name lhrpg96 -h lhrpg96 -d -p 54322:5432 -e POSTGRES_PASSWORD=lhr -e TZ=Asia/Shanghai postgres:9.6 docker run --name lhrpg10 -h lhrpg10 -d -p 54323:5432 -e POSTGRES_PASSWORD=lhr -e TZ=Asia/Shanghai postgres:10 docker run --name lhrpg11 -h lhrpg11 -d -p 54324:5432 -e POSTGRES_PASSWORD=lhr -e TZ=Asia/Shanghai postgres:11 docker run --name lhrpg12 -h lhrpg12 -d -p 54325:5432 -e POSTGRES_PASSWORD=lhr -e TZ=Asia/Shanghai postgres:12 docker run --name lhrpg13 -h lhrpg13 -d -p 54326:5432 -e POSTGRES_PASSWORD=lhr -e TZ=Asia/Shanghai postgres:13 docker run --name lhrpg133 -h lhrpg133 -d -p 54327:5432 -e POSTGRES_PASSWORD=lhr -e TZ=Asia/Shanghai postgres:13.3 -- docker直接登陆 docker exec -it lhrpg133 psql -U postgres -d postgres -- 本地登陆 docker exec -it lhrpg133 bash su - postgres psql -- 远程登陆 psql -U postgres -h 192.168.66.35 -d postgres -p54327 -- 从Postgresql 9.2开始,还可以使用URI格式进行远程连接:psql postgresql://myuser:mypasswd@myhost:5432/mydb psql postgresql://postgres:lhr@192.168.66.35:54327/postgres
其中-h参数指定服务器地址,默认为127.0.0.1,默认不指定即可,-d指定连接之后选中的数据库,默认也是postgres,-U指定用户,默认是当前用户,-p 指定端口号,默认是’5432’,其它更多的参数选项可以执行: ./bin/psql —help 查看。
C:\Users\lhrxxt>psql -U postgres -h 192.168.66.35 -d postgres -p54327 Password for user postgres: psql (13.3) Type 'help' for help. postgres=# select version(); version ------------------------------------------------------------------------------------------------------------------ PostgreSQL 13.3 (Debian 13.3-1.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit (1 row) postgres=# \l List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges -----------+----------+----------+-------------------+-------------------+----------------------- postgres | postgres | UTF8 | Chinese_China.936 | Chinese_China.936 | template0 | postgres | UTF8 | Chinese_China.936 | Chinese_China.936 | =c/postgres + | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | Chinese_China.936 | Chinese_China.936 | =c/postgres + | | | | | postgres=CTc/postgres (3 rows) postgres=# CREATE DATABASE lhrdb WITH OWNER=postgres ENCODING='UTF-8'; CREATE DATABASE postgres=# \c lhrdb You are now connected to database 'lhrdb' as user 'postgres'. lhrdb=# lhrdb=# create table student ( lhrdb(# id integer not null, lhrdb(# name character(32), lhrdb(# number char(5), lhrdb(# constraint student_pkey primary key (id) lhrdb(# ); CREATE TABLE lhrdb=# lhrdb=# \d student Table 'public.student' Column | Type | Collation | Nullable | Default --------+---------------+-----------+----------+--------- id | integer | | not null | name | character(32) | | | number | character(5) | | | Indexes: 'student_pkey' PRIMARY KEY, btree (id) lhrdb=# lhrdb=# INSERT INTO student (id, name, number) VALUES (1, '张三', '1023'); INSERT 0 1 lhrdb=# SELECT * FROM student WHERE id=1; id | name | number ----+------------------------------------+-------- 1 | 张三 | 1023 (1 row)
是不是很方便呢。
安装配置完成。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
做一个照片墙——可拖动平移和以任意点为中心缩放的DIV组件
最近在做一个照片墙网页,展示自己画的明日方舟的像素画,希望这个网页可以用鼠标拖动平移同时可以以鼠标当前位置为中心滚动滚轮缩放。 上网搜了下,基于 Vue 和 React 的实现很多,但是因为这个网页很简单,所以决定用原生实现。 最终效果可见:https://columns-wings.oss-cn-hangzhou.aliyuncs.com/illusion/ 封装 为了复用,我把它封装成一个类,暴露出两个成员,一个容器元素用于挂载到文档,一个内容元素用于添加内容。基础成员包括: $container: 容器元素 $content: 内容元素 x: 横坐标 y: 纵坐标 s: 缩放比例 在容器上绑定鼠标移动(mousemove)和鼠标滚轮(mousewheel)事件(暂不考虑浏览器兼容性),在事件处理函数中进行相应计算。 平移 平移可以使用 CSS 的 transform: translate 属性设置,在鼠标 move 事件中读取movementX和movementY来获取鼠标偏移量,添加到元素的位移中: /** * @name 处理鼠标拖动 * @param {Object} ev...
- 下一篇
恕我直言,微服务挺好,但不适合你
今天这篇文章我们继续说架构师大刘的故事。 故事纯属虚构,别对号入座哈。 前言 大刘日子最近还不错,经常午睡醒来,就继续拿着手机看小说摸鱼。大刘对当前所在的这家公司比较满意。大部分系统已经成熟稳定,用户量也中规中矩。虽然有些项目技术陈旧,但好处是没啥幺蛾子技术问题冒出来等着解决。 只是有时候大刘心里会打鼓,公司盈利在下降,巅峰不在,也不知道这家公司能撑多久。除了偶然会冒出些对工作稳定的担忧以外,大部分时候,大刘心情都是愉快的。直到他被领导叫到办公室分派新任务的那一刻…… 大刘的领导 CTO 老李,这些日子心情不是很好。他在的这家公司原本是个以传统业务为主的公司。为了跟上互联网时代,大老板拍脑袋成立了个技术部门搞互联网。虽说公司已经号称触网了,但是公司盈利基本还是靠传统业务,技术部门只是打辅助的。没有业务主动权,没有盈利点,部门员工的工资却都不低,老李的地位就可见一般了,经常受些冷言冷语的夹板气。再加上,最近公司的效益也有所下降,眼见技术部门面临着裁员的危险。老李危机意识被极大的刺激到了。 老李是个技术出身,但是离开一线编码已经快十年了,每天的工作其实就是管理加玩概念。这几年微服务的概念非...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2全家桶,快速入门学习开发网站教程
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- 设置Eclipse缩进为4个空格,增强代码规范
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果