- 博客(13)
- 资源 (1)
- 收藏
- 关注
原创 postgresql从入门到菜鸟(十二)initdb流程分析-初期化集簇(下)
上篇文章分析到使用引导模式创建了template1,下面继续分析到了这里引导模式的工作基本就结束了,下面开始使用postgres的单用户模式对template1创建系统表,视图,依赖,以及扩展插件的安装等一列操作。首先是通过setup_auth()设置search_path和exit_on_error,下面的代码本来是放在setup_auth()中执行,但是新版本中被提出来了。 //这里第一...
2018-12-21 10:18:30 801 1
原创 postgresql从入门到菜鸟(十一)initdb流程分析-初期化集簇(上)
接下来分析数据集簇初期化的过程,初期化的过程很长,并且过程中有很多相似的操作,所以在初期化中就不再一一分析函数实现了,有兴趣的朋友可以去阅读以下源码。初期化的入口为initialize_data_directory()函数,下面开始分析一进initialize_data_directory()函数,首先进行对信号量的处理,对于信息量的类型这里就不阐述了,可以通过百度查询voidsetup_...
2018-12-20 23:15:54 1005
原创 postgresql从入门到菜鸟(十)initdb流程分析-环境设定
分析完了参数解析,接下来分析环境设置首先设定的是认证方式static voidcheck_authmethod_unspecified(const char **authmethod){ if (*authmethod == NULL || strlen(*authmethod) == 0) { authwarning = _("\nWARNING: enabling \"trus...
2018-12-19 13:37:16 986
原创 postgresql从入门到菜鸟(九)initdb流程分析-参数解析
上一期说了initdb的大概流程和初期准备,这一期说一说参数解析首先看一下initdb的入口,main函数main(int argc, char *argv[])这里有两个参数,argc和argv[]argc: 命令行总的参数个数argv[]:保存命令行参数的字符串指针,其中argv[0]参数是程序的全名假设我在命令行输入initdb -D pgdataargc=3argv[0...
2018-12-19 11:13:16 2993
原创 postgresql从入门到菜鸟(八)initdb流程分析-初期准备
initdb 命令用于创建一个新的PostgreSQL数据库集簇先看一下命令的用法initdb [option…] [–pgdata | -D] directory通过-D参数可以指定数据库集簇的目录,其他参数包括字符集,区域等可以参考官方手册http://www.postgres.cn/docs/9.6/app-initdb.htmlinitdb大概可以分为一下几个阶段:1.初期准备...
2018-12-18 18:45:41 877
原创 postgresql从入门到菜鸟(七)集群目录结构
通过initdb可以创建postgresql的集群目录pgdata,这里列一下各个目录和文件的作用:pgdata (集群目录) 丨--base (数据库目录) 丨--1 (template1) 丨--13268 (template0) ...
2018-12-18 10:40:32 973
原创 postgresql从入门到菜鸟(六)libpq连接postgres数据库
上一期讲了一些如何通过jdbc连接postgresql数据库,这一期准备说一说如何通过libpq连接postgresql数据库。 上一期的jdbc是postgresql的java语言应用程序接口,这一期的libpq对应的是postgresql的C语言应用程序接口。这里依旧分为三个模块来讲: 一.获取连接 二.执行select语句 三.执行insert,delete,update语句...
2018-08-09 15:03:30 13202 1
原创 JDBC连接postgresql例子
package tool;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;public class PsqlConnectionTool {...
2018-07-26 11:41:59 21334 2
原创 postgresql从入门到菜鸟(五)JDBC连接postgresql数据库
之前都是通过psql命令进行数据库的操作,从这一期开始准备写一些如何通过LIBPQ,JDBC,ODBC等方式来postgresql并进行相关的操作,这一期准备先说说JDBC。这里分为三个模块来讲: 一.获取连接 二.执行select语句 三.执行insert,delete,update语句第一部分:获取连接 要通过jdbc连接postgresql首先需要加载JDBC驱动,语法如下...
2018-07-17 17:20:35 14466 2
原创 postgresql从入门到菜鸟(四)pl/pgsql过程语言
之前介绍了一些postgresql数据库的配置,以及窗口函数的使用。这一次准备说一些pl/pgsql过程语言方面的东西。pl/pgsql主要的功能是对sql进行扩展,让sql可以实现,逻辑判断,循环等功能。首先说说优点,我个人理解使用过程语言最大的优点就是减少了客户端与服务端之间的通信消耗。以一个用户登录的功能为例:假设登录功能实现的方式为,首先判断用户是否存在,如果不存在,向...
2018-07-16 16:11:06 7308
原创 postgresql从入门到菜鸟(三)基本命令和窗口函数
上一篇我们已经在rhel上创建了数据库,并且建立的一张成绩表。之后通过通过客户端连接上服务器端。这一篇将会写一些关于数据库的操作,首先是一些基本的操作的操作如选择数据库,查看表等等。连接至服务器端后可以通过以下命令查看数据库的基本信息\l:查看所有数据库。\c:选择数据库 。 \c+dbname+username可以选择某用户进入数据库。\dt;查看所有的表。\d:查...
2017-07-28 10:20:13 7204
原创 postgresql从入门到菜鸟(二)服务端配置和psql连接
上一篇文章我们已经成功在rehel上安装了postgrel数据库。关于window环境下的安装,可以直接下载install文件,进行双击安装,或者通过编译源码的方式安装。本篇文章将介绍postgresql数据的基本配置,以及客户端与服务器端的连接。先看服务器端当我们通过 pg_start 命令启动服务器后,就可以在本机进行访问了访问指令为 psql -h 127.0....
2017-07-13 11:48:51 1983
原创 postgresql从入门到菜鸟(一)通过编译方式安装postgresql
最近工作需要用到postgresql数据库,学习过程中发现网上的资料并不是很多。在这里把学习的过程以及学习过程中的问题分享出来,希望能对需要刚才开始学习postgresql的人有所帮助。安装篇安装安装环境为:rehel虚拟机。安装方式:源码安装。postgresql版本:9.5.4.首先下载postgresql源码包wget https://ftp.postgresql.org/p...
2017-07-13 09:52:12 5804 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人