当前位置: 首页 > article >正文

PostgreSQL模板数据库template0和template1的异同点

PostgreSQL模板数据库

PostgreSQL有两个模板数据库:template0和template1,template0是不可修改的,而template1是可以修改的。

那模板数据库有什么作用呢?顾名思义,当做模板。

其实我们创建数据库 CREATE DATABASE 其实就是复制template1模板库,命名为新库。

那两个模板库有什么区别呢?

template0模板库

  1. template0是不可修改的,是PG的最后一道防线!因为(template1模板库)可以改,可以进行定制化;而同时也意味着可能会改错,如果改错了,就创建不了数据库了;所以template0是最后的保险,是不能修改的。
  2. 使用template0可指定字符集和本地化collate属性。
create database dbname with encoding 'UTF-8' template template0 
lc_collate='zh_CN.utf8' lc_ctype='zh_CN.utf8';

template1模板库

  1. template1是可以修改的,可以定制化一些特定的功能,比如:定制一个dba模式,创建一些运维常用的视图等,这样创建新数据库时,都会自带这个dba模式。
  2. 使用template1创建数据库时不可指定新的字符集和本地化collate属性,即只能和它的规则保持一致。
create database dbname with template template1;

参考:https://www.postgresql.org/docs/current/manage-ag-templatedbs.html


http://www.kler.cn/news/359924.html

相关文章:

  • 如何在 CentOS 7 上使用 Nginx 将 www 重定向到非 www
  • 全面了解 NGINX 的负载均衡算法
  • RabbitMQ系列学习笔记(三)--工作队列模式
  • 基于卷积神经网络和 Swin Transformer 的图像处理模型
  • Docker设置日志滚动
  • restrict是如何限定指针访问的?C语言必须用.c为扩展名吗?为什么C系语言很流行?哪些语言可以称为C系语言?
  • GLSL(OpenGL Shading Language)学习路线
  • Python | Leetcode Python题解之第498题对角线遍历
  • Ratkins Army Pack 死亡军团骑士战士游戏角色
  • 2024年10月21日可以使用的微信小程序官方获取头像和姓名
  • 函数的力量:掌握C语言的基石
  • CommonJS 和 ES modules
  • vector和list
  • 基于AIACC加速器快速实现LLaMA-7B指令微调
  • 写好英文邮件的技巧,如何结构化表达?
  • OpenLayers:用于在 web 应用程序中创建互动地图
  • 阿里巴巴达摩院|Chain of Ideas: 利用大型语言模型代理革新新颖创意开发的研究
  • Python Flask 接收前端上传的图片
  • C++11 thread,mutex,condition_variable,atomic,原子操作CAS,智能指针线程安全,单例模式最简单实现方式
  • Redis 数据类型Streams