本文共 2178 字,大约阅读时间需要 7 分钟。
运行以下命令拉取PostgreSQL-11的镜像:
docker pull docker.io/postgres:11
创建并编辑启动脚本startPostgres.sh
:
vi startPostgres.sh
脚本内容如下:
#!/bin/bashdocker run -d --name postgresql-11 \--restart=always \-v /postgresql/data:/var/lib/postgresql/data \-e POSTGRES_PASSWORD=123456 \-p 5432:5432 \docker.io/postgres:11
对脚本进行权限设置:
chmod +x startPostgres.sh
在终端执行脚本:
./startPostgres.sh
查看容器日志或检查启动错误:
docker logs postgresql-11
如果遇到报错,重新启动容器:
docker restart postgresql-11
进入容器并安装所需的中文编码:
docker exec -it postgresql-11 /bin/bash#安装localessudo apt-get install locales#设置语言环境sudo dpkg-reconfigure locales
确保所有配置正确后,重新启动容器:
docker start postgresql-11
在Docker中使用PostgreSQL有三种方式:通过Dockerfile、Docker Compose或直接命令运行。以下以Docker Compose方式示例:
确保Docker和Docker Compose已安装。当Apparently这些工具的版本:
查看内核版本:uname -a
查看Docker版本:
docker --versiondocker-compose --version
拉取适用于你的系统的PostgreSQL镜像。例如,在Ubuntu 20.04上运行:
docker pull postgres:15-bullseye
创建PostgreSQL数据目录并启动容器:
mkdir dockerdata/postgresql && cd dockerdata/postgresql
配置docker-compose.yml
文件:
vim docker-compose.yml
内容示例:
version: '2.3'services: pgdb: image: postgres:15-bullseye restart: always environment: POSTGRES_PASSWORD: ggyy POSTGRES_USER: ggyy ports: - 5439:5439 volumes: - ./postgres:/data/postgres postgres-db: driver: local
运行Docker Compose:
docker-compose -f docker-compose.yml up -d
进入PostgreSQL数据库:
docker exec -it postgresql_pgdb_1 psql -U ggyy
(注意:请根据实际设置的用户名和密码替换。)
基础查询语法:
SELECT first_name, last_name, email FROM customer;
可 tùy文风 kaphanurtles viewers 使用\x分隔结果:
SELECT first_name || ' ' || last_name, email FROM customer;
WHERE子句的基本用法:
SELECT columns_list FROM table_name WHERE query_condition;
举例:
SELECT first_name FROM customer WHERE first_name LIKE 'ANN%';
或使用BETWEEN
和LIKE
结合:
SELECT first_name, LENGTH(first_name) name_lengthFROM customerWHERE first_name LIKE 'A%'AND LENGTH(first_name) BETWEEN 3 AND 5ORDER BY name_length;
转载地址:http://vpeyk.baihongyu.com/