Debian 12 自定义PostgreSQL数据目录位置

本文档详细介绍了如何在Debian 12系统中将PostgreSQL的默认数据目录迁移到自定义位置,以实现系统重装后快速恢复数据库。步骤包括创建新位置、移动数据文件、修改配置、启动数据库以及验证和清理数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

缘起

我是Linux系统新手,对系统不怎么熟悉,在短短两三个星期内已经重装了三次系统了,每次重装系统,比较痛苦的一点就是数据库数据的重新获取。当然也可以备份、还原,但不是很确定兼容性会怎样,会不会出问题,也担心忘记备份。于是,想直接修改PostgreSQL的数据文件位置,这样,如果下次因为什么原因重装系统,就可以直接把新安装的PostgreSQL指向现有的数据文件位置即可。

配置

Debian 12
PostgreSQL 15

准备工作——创建新位置

创建如下新目录,并且GRANT全部权限,数据文件将保存于此:

/home/db/postgre/data

步骤一:移动数据文件

使用默认PostgreSQL用户进入交互:

$ sudo -u postgres psql

查看当前默认的数据目录位置:

postgres=# SHOW data_directory;

Output
       data_directory
-----------------------------
 /var/lib/postgresql/15/main
(1 row)
退出交互:

postgres=# \q

停止服务:

$ sudo systemctl stop postgresql

查看服务状态,确认已经停止:

$ sudo systemctl status postgresql

可以看到输出中有inactive (dead)字样,说明服务完全停止了:


                
Odoo 17 是一款强大的企业资源规划(ERP)软件,它提供了一整套业务应用程序模块,涵盖了从销售、采购到项目管理等多个方面。而Debian 12是一个稳定可靠的Linux发行版,适合用于部署各种应用和服务。 在Debian 12上安装和配置Odoo 17可以让你充分利用这两个强大工具的优势: ### 系统环境准备 首先需要更新系统并安装依赖项,在终端运行命令: ```bash sudo apt update && sudo apt upgrade -y ``` 接着添加Python和其他必要的库包: ```bash sudo apt install python3-pip build-essential wget git curl software-properties-common libxml2-dev libxslt1-dev libsasl2-dev libldap2-dev node-less libjpeg-dev zlib1g-dev -y ``` 为了便于后续维护建议创建单独用户来运行服务,并赋予无密码sudo权限。 ```bash sudo adduser --system --home=/opt/odoo --group odoo echo "odoo ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/odoo ``` 然后切换至新建的`odoo`账户继续操作: ```bash su - odoo ``` #### 安装PostgreSQL数据库管理系统 Odoo默认采用Postgres作为其后台数据库引擎,因此我们需要先搭建好这个组件: ```bash wget -qO - https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | sudo tee /usr/share/keyrings/pgdg-keyring.gpg > /dev/null echo 'deb [signed-by=/usr/share/keyrings/pgdg-keyring.gpg] http://apt.postgresql.org/pub/repos/apt bullseye-pgdg main' | sudo tee /etc/apt/sources.list.d/pgdg.list sudo apt update && sudo apt install postgresql postgresql-contrib pgadmin4 -y ``` 初始化设置完成后重启服务生效更改: ```bash sudo systemctl enable postgresql.service sudo systemctl start postgresql.service ``` #### 获取最新版本源码以及安装所需依赖 回到普通用户的shell环境下拉取官方Git仓库内容: ```bash cd ~ git clone --depth=1 --branch=17.0 https://github.com/odoo/odoo.git pip3 install wheel setuptools pipenv pipenv sync --python $(which python3) ``` #### 配置文件调整及启动脚本编写 创建自定义目录结构存放日志数据等信息: ```bash mkdir ~/custom-addons ~/.odoorc daterun_odoo.log touch .odoorc/config.conf chmod +x runbot.py wsgi.py openerp-server chown -R odoo: ~/ ``` 编辑配置文档`~/.odoorc/config.conf`, 主要修改点包括但不限于监听端口、管理员主密钥参数设定: ```ini [options] ; 日志等级可用值有:info(warning),debug_rpc,debug_rpc_answer... log_level = info logfile = /home/user/daterun_odoo.log ; 指定日志路径 db_host = False # 默认本地连接 PostgresSQL 数据库实例无需填写此项 db_port = False # 同理,默认5432即可保持空白状态即自动识别 db_user = odoo # 创建新DB用户名 db_password = "" # 密码留空则表示通过unix socket验证身份 addons_path = ./addons,/home/user/custom-addons ; 添加额外插件地址引用列表 workers = 0 ;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值