All posts by 龙生
借助 docker 安装 pgAdmin
1 2 3 |
pgAdmin 是一个强大的 postgresql 的图形化管理工具,既可以本地运行也可以以 web 应用的方式运行。 因为 postgresql 是安装在虚拟机上的,所以我需要让 pgAdmin 以 web 应用的方式运行。 但是文档里只有 Apache 相关的配置, 看起来很复杂,所以在网上搜了简化的安装方法并稍微改了下。 |
安装 docker 和 nginx 这个看文档即可。 引入现成的 pgadmin 的 docker镜像
1 |
docker pull chorss/docker-pgadmin4 |
运行该镜像: docker run -e SERVER_MODE=true -e PGADMIN_SETUP_EMAIL=berrydigital@gmail.com \ -e PGADMIN_SETUP_PASSWORD=password -d -p 5050:5050 \ -v /home/robert/data:/data chorss/docker-pgadmin4 -e 表示传入容器的环境变量,PGADMIN_SETUP_EMAIL 和 PGADMIN_SETUP_PASSWORD 分别为 pgAdmin 登陆的账号密码。 -V /home/robert/data:/data 表示宿主机目录和容器目录对应的映射关系,宿主机目录可以自己设置。运行时可能会因为目录权限报错,需要修改目录权限(本地开发直接改成 777 )。 nginx 配置
1 2 3 4 5 |
server { listen 80; server_name YOUR_SERVER_NAME; return 301 https://localhost:5050; } |
主要是将请求反向代理到 docker 容器内。 postgresql 配置 默认是 5432 端口,只有本机可以访问,需要修改访问权限:把 postgresql.conf 中的 listen_addresses 的值 设置为 *,表示所有 ip 会被响应。 还需要修改 pg_hba.conf,用于设置连接的许可,添加: host all all 0.0.0.0/0 md5 表示所有用户及 ip 都可以建立连接,密码加密方式为 md5. 重启 postgresql:sudo service postgresql restart 此时可以通过 YOUR_SERVER_NAME 登陆 pgAdmin 了。 虚拟机ip 进入 pgAdmin 后需要设置 postgresql […]
View Details在 Docker 中运行 PostgreSQL
本教程将指导您完成如何在 Docker 容器内运行具有持久存储的 PostgreSQL 并连接到它的过程。 PostgreSQL是一个开源的对象关系数据库管理系统。它已经存在了 30 多年,并标榜自己是“世界上最先进的开源关系数据库”。 在轻松打包、部署和运行分布式应用程序方面,Docker已成为 IT 行业的标准。Docker 容器让您可以快速启动新应用程序,而不会因依赖项而使您的系统变得混乱。 您可以使用 Docker 在容器中运行 PostgreSQL 数据库,就像它是远程服务器一样。Docker 容器基于开放标准,使容器能够在所有主要Linux 发行版、MacOS 和 Microsoft Windows 上运行。 在 Docker 中运行 PostgreSQL 我们在这里要做的是下载PostgreSQL镜像,检查镜像是否准备好,使用特定参数运行镜像,最后连接到正在运行的PostgreSQL实例。 1. 拉取一个 PostgreSQL 服务器 Docker 镜像 首先,我们需要从Docker Hub获取现有的 PostgreSQL 官方镜像。镜像适用于 PostgreSQL 版本 9、10、11、12 和 13。如果您需要特定版本,latest 请将标签更改 为所需版本。 现在让我们拉取图像:
1 |
sudo docker pull postgres:latest |
使用上述命令将从 Docker Hub 存储库中提取最新可用版本的 PostgreSQL。 2. 从 PostgreSQL 服务器 Docker 镜像运行容器 在部署之前,您需要设置一个 Docker 卷或绑定安装来持久化您的数据库。否则,当容器重新启动时,您的数据将丢失。安装应该 /var/lib/postgresql/data 在容器内的目录中。 出于本指南的目的,我们将创建一个 docker 卷并将其附加到您的 PostgreSQL 容器。 以下命令将在您的本地计算机中创建卷,您可以稍后与 PostgreSQL 容器连接:
1 |
sudo docker volume create postgres-volume |
现在你的机器上有 PostgreSQL 镜像和一个用于保存数据的卷,你可以部署一个容器:
1 |
sudo docker run -d --name=postgres13 -p 5432:5432 -v postgres-volume:/var/lib/postgresql/data -e POSTGRES_PASSWORD=your_password postgres |
该 docker run 命令将在 Docker 容器中创建一个正在运行的 PostgreSQL 数据库。 让我们分解一下这个语法。以下是该命令中每个参数的含义: -d 将以分离模式运行此容器,以便它在后台运行。 --name 将名称“postgres13”分配给您的容器实例。 -p会将 PostgreSQL 容器端口 […]
View Detailscentos7系统v2rayN搭建
新的一键V2Ray脚本,经过笔者的测试,安装简单方便,自动关闭防火墙,自动安装BBR加速,因此推荐大家使用! 安装命令: 输入以下命令一键安装、 bash <(curl -s -L https://git.io/v2ray-setup.sh) 老鸟可以用这个自定义安装: bash <(curl -s -L https://git.io/v2rayinstall.sh) 显示一下信息代表安装成功(可直接用以下配置进行连接)(以下配置在链接时使用): centos7搭建V2Ray教程 – globalservers from:https://zhuanlan.zhihu.com/p/510941661
View DetailsPostgreSQL 数据类型
PostgreSQL提 供了丰富的数据类型。用户可以使用 CREATE TYPE 命令在数据库中创建新的数据类型。PostgreSQL 的数据类型有很多种,下面我们具体来说明。
View Detailsgit 教程 --git cherry-pick 命令
在git管理的工程中,不可避免的存在多个分支,比如流行的gitflow就划分为很多的分支,那么就会有代码的合并。一般代码的合并分为两种:一种是整个分支的合并,一个是挑选部分的commit来合并。本文介绍的就是挑选部分的commit来提交的指令git cherry-pick。
View Details@Scheduled 定时任务
每5分钟执行一次
1 |
@Scheduled(cron = "0 0/5 * * * ?") |
每一小时执行一次
1 |
@Scheduled(cron = "0 0 * * * ?") |
每一天执行一次
1 |
@Scheduled(cron = "0 0 0 * * ?") |
from:https://blog.csdn.net/imsjw/article/details/88381363
View Details从MyBaits的Mapper文件中使用Spring配置值
问题 想要在select语句中完成Spring配置值与查询的结果进行拼接。 解决 application.yml
1 2 3 4 5 6 |
download: prefix: http://xxxx/get/ mybatis: mapper-locations: classpath:/mapper/*.xml configuration-properties: dowPush: ${download.prefix} |
Mapper.xml
1 2 3 |
<select> select CONCAT('${dowPush}', picture_url) as url from t_xxx where id = #{id} </select> |
总结 这样就能够在MyBatis的xml映射文件中,读取到Spring的配置了。 参考: Mybatis的映射文件Mapper.xml获取applicaition.properties配置文件中定义的属性值 mybatis-spring-boot-autoconfigure 配置 from:https://blog.csdn.net/fxtxz2/article/details/129319872
View Details一文详细讲解如何查看mysql里面的锁
锁是MySQL里面最难理解的知识,但是又无处不在,下面这篇文章主要给大家介绍了关于关于如何查看mysql里面锁的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
View Details通过Mybatis的流式查询ResultHandler解决超大Excel导出内存溢出问题
在项目开发过程导出Excel为常用功能,之前的一篇Java导出超大Excel文件,防止内存溢出已经解决了Excel写入层面时的内存问题,但数据库查询层面,仍存在由于默认的mybatis查询是将所有数据都查询到本地内存,因此仍有可能会导致内存溢出,因此本文再详细介绍记录通过mybatis的ResultHander进行流式查询读取来完全解决excel的大量数据导出内存溢出问题。
View Details