Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 465 lines (360 sloc) 18.219 kB
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
1 Description
2 ===========
3
4 Installs and configures PostgreSQL as a client or a server.
5
6 Requirements
7 ============
8
9 ## Platforms
10
11 * Debian, Ubuntu
12 * Red Hat/CentOS/Scientific (6.0+ required) - "EL6-family"
13 * Fedora
14 * SUSE
15
16 Tested on:
17
e46584c @nazarhussain Added support for Ubuntu 14.10
nazarhussain authored
18 * Ubuntu 10.04, 11.10, 12.04, 14.04, 14.10
dbf5e44 @jtimberman release v1.0.0
jtimberman authored
19 * Red Hat 6.1, Scientific 6.1, CentOS 6.3
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
20
0f476dd Fix typo in README.md while I'm at it.
Julian C. Dunn authored
21 ## Cookbooks
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
22
23 Requires Opscode's `openssl` cookbook for secure password generation.
24
25 Requires a C compiler and development headers in order to build the
dbf5e44 @jtimberman release v1.0.0
jtimberman authored
26 `pg` RubyGem to provide Ruby bindings in the `ruby` recipe.
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
27
28 Opscode's `build-essential` cookbook provides this functionality on
29 Debian, Ubuntu, and EL6-family.
30
31 While not required, Opscode's `database` cookbook contains resources
32 and providers that can interact with a PostgreSQL database. This
dbf5e44 @jtimberman release v1.0.0
jtimberman authored
33 cookbook is a dependency of database.
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
34
35 Attributes
36 ==========
37
38 The following attributes are set based on the platform, see the
39 `attributes/default.rb` file for default values.
40
41 * `node['postgresql']['version']` - version of postgresql to manage
42 * `node['postgresql']['dir']` - home directory of where postgresql
43 data and configuration lives.
44
dbf5e44 @jtimberman release v1.0.0
jtimberman authored
45 * `node['postgresql']['client']['packages']` - An array of package names
46 that should be installed on "client" systems.
47 * `node['postgresql']['server']['packages']` - An array of package names
48 that should be installed on "server" systems.
6d084b2 @btomasini [COOK-3851] Allow config file change notification type to be speci…
btomasini authored
49 * `node['postgresql']['server']['config_change_notify']` - Type of
50 notification triggered when a config file changes.
bf66ba1 @davidc-donorschoose Optional postgresql::config recipe to install useful administration t…
davidc-donorschoose authored
51 * `node['postgresql']['contrib']['packages']` - An array of package names
52 that could be installed on "server" systems for useful sysadmin tools.
dbf5e44 @jtimberman release v1.0.0
jtimberman authored
53
71009a9 @artiom update docs
artiom authored
54 * `node['postgresql']['enable_pgdg_apt']` - Whether to enable the apt repo
55 by the PostgreSQL Global Development Group, which contains newer versions
56 of PostgreSQL.
dbf5e44 @jtimberman release v1.0.0
jtimberman authored
57
96f3473 @davidc-donorschoose Provide PGDG yum repo to install PostgreSQL 9.X on redhat-derived dis…
davidc-donorschoose authored
58 * `node['postgresql']['enable_pgdg_yum']` - Whether to enable the yum repo
59 by the PostgreSQL Global Development Group, which contains newer versions
60 of PostgreSQL.
61
ef1c581 @malheiros [COOK-3597] Implement `initdb_locale` attribute for RHEL
malheiros authored
62 * `node['postgresql']['initdb_locale']` - Sets the default locale for the
63 database cluster. If this attribute is not specified, the locale is
64 inherited from the environment that initdb runs in. Sometimes you must
65 have a system locale that is not what you want for your database cluster,
66 and this attribute addresses that scenario. Valid only for EL-family
67 distros (RedHat/Centos/etc.).
68
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
69 The following attributes are generated in
70 `recipe[postgresql::server]`.
71
72 * `node['postgresql']['password']['postgres']` - randomly generated
73 password by the `openssl` cookbook's library.
ef8b7ae @davidc-donorschoose Document problems with postgres "encrypted password" attribute.
davidc-donorschoose authored
74 (TODO: This is broken, as it disables the password.)
3b3b086 @jtimberman [COOK-1871] - documentation, style updates
jtimberman authored
75
76 Configuration
77 -------------
78
79 The `postgresql.conf` and `pg_hba.conf` files are dynamically
80 generated from attributes. Each key in `node['postgresql']['config']`
81 is a postgresql configuration directive, and will be rendered in the
82 config file. For example, the attribute:
83
acdc1b5 @tpett [COOK-3555] Rename example configuration to listen_addresses
tpett authored
84 node['postgresql']['config']['listen_addresses'] = 'localhost'
3b3b086 @jtimberman [COOK-1871] - documentation, style updates
jtimberman authored
85
86 Will result in the following line in the `postgresql.conf` file:
87
acdc1b5 @tpett [COOK-3555] Rename example configuration to listen_addresses
tpett authored
88 listen_addresses = 'localhost'
3b3b086 @jtimberman [COOK-1871] - documentation, style updates
jtimberman authored
89
90 The attributes file contains default values for Debian and RHEL
91 platform families (per the `node['platform_family']`). These defaults
92 have disparity between the platforms because they were originally
93 extracted from the postgresql.conf files in the previous version of
94 this cookbook, which differed in their default config. The resulting
95 configuration files will be the same as before, but the content will
96 be dynamically rendered from the attributes. The helpful commentary
97 will no longer be present. You should consult the PostgreSQL
98 documentation for specific configuration details.
99
19a261e @davidc-donorschoose Documented how optional config_* recipes autogenerate postgresql.conf
davidc-donorschoose authored
100 See __Recipes__ `config_initdb` and `config_pgtune` below to
101 auto-generate many postgresql.conf settings.
102
b802a57 @jtimberman [COOK-1871] - update readme per comments in #26
jtimberman authored
103 For values that are "on" or "off", they should be specified as literal
104 `true` or `false`. String values will be used with single quotes. Any
105 configuration option set to the literal `nil` will be skipped
106 entirely. All other values (e.g., numeric literals) will be used as
107 is. So for example:
108
109 node.default['postgresql']['config']['logging_collector'] = true
110 node.default['postgresql']['config']['datestyle'] = 'iso, mdy'
111 node.default['postgresql']['config']['ident_file'] = nil
cc2fef7 @juanluisrp Missing ' in ['postgresql']['config']['port'] ex
juanluisrp authored
112 node.default['postgresql']['config']['port'] = 5432
b802a57 @jtimberman [COOK-1871] - update readme per comments in #26
jtimberman authored
113
114 Will result in the following config lines:
115
116 logging_collector = 'on'
117 datestyle = 'iso,mdy'
118 port = 5432
119
120 (no line printed for `ident_file` as it is `nil`)
121
4b079e7 @allaire [COOK-3611] Fix Postgresql::ruby on ubuntu/debian and fix config for 9.3
allaire authored
122 Note that the `unix_socket_directory` configuration was renamed to
123 `unix_socket_directories` in Postgres 9.3 so make sure to use the
124 `node['postgresql']['unix_socket_directories']` attribute instead of
125 `node['postgresql']['unix_socket_directory']`.
126
3b3b086 @jtimberman [COOK-1871] - documentation, style updates
jtimberman authored
127 The `pg_hba.conf` file is dynamically generated from the
128 `node['postgresql']['pg_hba']` attribute. This attribute must be an
129 array of hashes, each hash containing the authorization data. As it is
130 an array, you can append to it in your own recipes. The hash keys in
131 the array must be symbols. Each hash will be written as a line in
132 `pg_hba.conf`. For example, this entry from
133 `node['postgresql']['pg_hba']`:
134
b9f6f18 @zigomir Update README.md
zigomir authored
135 [{:comment => '# Optional comment',
136 :type => 'local', :db => 'all', :user => 'postgres', :addr => nil, :method => 'md5'}]
3b3b086 @jtimberman [COOK-1871] - documentation, style updates
jtimberman authored
137
138 Will result in the following line in `pg_hba.conf`:
139
ac77502 @davidc-donorschoose Hard-code passwordless access for postgres user and add helpful comme…
davidc-donorschoose authored
140 # Optional comment
141 local all postgres md5
3b3b086 @jtimberman [COOK-1871] - documentation, style updates
jtimberman authored
142
143 Use `nil` if the CIDR-ADDRESS should be empty (as above).
ac77502 @davidc-donorschoose Hard-code passwordless access for postgres user and add helpful comme…
davidc-donorschoose authored
144 Don't provide a comment if none is desired in the `pg_hba.conf` file.
145
146 Note that the following authorization rule is supplied automatically by
147 the cookbook template. The cookbook needs this to execute SQL in the
148 PostgreSQL server without supplying the clear-text password (which isn't
149 known by the cookbook). Therefore, your `node['postgresql']['pg_hba']`
150 attributes don't need to specify this authorization rule:
151
152 # "local" is for Unix domain socket connections only
153 local all all ident
154
155 (By the way, the template uses `peer` instead of `ident` for PostgreSQL-9.1
156 and above, which has the same effect.)
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
157
158 Recipes
159 =======
160
161 default
162 -------
163
164 Includes the client recipe.
165
166 client
167 ------
168
3b3b086 @jtimberman [COOK-1871] - documentation, style updates
jtimberman authored
169 Installs the packages defined in the
170 `node['postgresql']['client']['packages']` attribute.
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
171
dbf5e44 @jtimberman release v1.0.0
jtimberman authored
172 ruby
173 ----
174
88deb22 @jtimberman more accurate phrasing about COOK-1406
jtimberman authored
175 **NOTE** This recipe may not currently work when installing Chef with
dbf5e44 @jtimberman release v1.0.0
jtimberman authored
176 the
88deb22 @jtimberman more accurate phrasing about COOK-1406
jtimberman authored
177 ["Omnibus" full stack installer](http://opscode.com/chef/install) on
178 some platforms due to an incompatibility with OpenSSL. See
3b3b086 @jtimberman [COOK-1871] - documentation, style updates
jtimberman authored
179 [COOK-1406](http://tickets.opscode.com/browse/COOK-1406). You can
180 build from source into the Chef omnibus installation to work around
181 this issue.
dbf5e44 @jtimberman release v1.0.0
jtimberman authored
182
183 Install the `pg` gem under Chef's Ruby environment so it can be used
3b3b086 @jtimberman [COOK-1871] - documentation, style updates
jtimberman authored
184 in other recipes. The build-essential packages and postgresql client
185 packages will be installed during the compile phase, so that the
186 native extensions of `pg` can be compiled.
dbf5e44 @jtimberman release v1.0.0
jtimberman authored
187
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
188 server
189 ------
190
191 Includes the `server_debian` or `server_redhat` recipe to get the
192 appropriate server packages installed and service managed. Also
193 manages the configuration for the server:
194
195 * generates a strong default password (via `openssl`) for `postgres`
ef8b7ae @davidc-donorschoose Document problems with postgres "encrypted password" attribute.
davidc-donorschoose authored
196 (TODO: This is broken, as it disables the password.)
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
197 * sets the password for postgres
3b3b086 @jtimberman [COOK-1871] - documentation, style updates
jtimberman authored
198 * manages the `postgresql.conf` file.
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
199 * manages the `pg_hba.conf` file.
200
201 server\_debian
202 --------------
203
3b3b086 @jtimberman [COOK-1871] - documentation, style updates
jtimberman authored
204 Installs the postgresql server packages and sets up the service. You
205 should include the `postgresql::server` recipe, which will include
206 this on Debian platforms.
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
207
208 server\_redhat
209 --------------
210
211 Manages the postgres user and group (with UID/GID 26, per RHEL package
212 conventions), installs the postgresql server packages, initializes the
3b3b086 @jtimberman [COOK-1871] - documentation, style updates
jtimberman authored
213 database, and manages the postgresql service. You should include the
214 `postgresql::server` recipe, which will include this on RHEL/Fedora
215 platforms.
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
216
19a261e @davidc-donorschoose Documented how optional config_* recipes autogenerate postgresql.conf
davidc-donorschoose authored
217 config\_initdb
218 --------------
219
220 Takes locale and timezone settings from the system configuration.
221 This recipe creates `node.default['postgresql']['config']` attributes
222 that conform to the system's locale and timezone. In addition, this
223 recipe creates the same error reporting and logging settings that
224 `initdb` provided: a rotation of 7 days of log files named
225 postgresql-Mon.log, etc.
226
227 The default attributes created by this recipe are easy to override with
228 normal attributes because of Chef attribute precedence. For example,
229 suppose a DBA wanted to keep log files indefinitely, rolling over daily
230 or when growing to 10MB. The Chef installation could include the
231 `postgresql::config_initdb` recipe for the locale and timezone settings,
232 but customize the logging settings with these node JSON attributes:
233
234 "postgresql": {
235 "config": {
236 "log_rotation_age": "1d",
237 "log_rotation_size": "10MB",
238 "log_filename": "postgresql-%Y-%m-%d_%H%M%S.log"
239 }
240 }
241
242 Credits: This `postgresql::config_initdb` recipe is based on algorithms
243 in the [source code](http://doxygen.postgresql.org/initdb_8c_source.html)
244 for the PostgreSQL `initdb` utility.
245
246 config\_pgtune
247 --------------
248
249 Performance tuning.
250 Takes the wimpy default postgresql.conf and expands the database server
251 to be as powerful as the hardware it's being deployed on. This recipe
252 creates a baseline configuration of `node.default['postgresql']['config']`
253 attributes in the right general range for a dedicated Postgresql system.
254 Most installations won't need additional performance tuning.
255
256 The only decision you need to make is to choose a `db_type` from the
257 following database workloads. (See the recipe code comments for more
258 detailed descriptions.)
259
260 * "dw" -- Data Warehouse
261 * "oltp" -- Online Transaction Processing
262 * "web" -- Web Application
263 * "mixed" -- Mixed DW and OLTP characteristics
264 * "desktop" -- Not a dedicated database
265
266 This recipe uses a performance model with three input parameters.
267 These node attributes are completely optional, but it is obviously
268 important to choose the `db_type` correctly:
269
270 * `node['postgresql']['config_pgtune']['db_type']` --
271 Specifies database type from the list of five choices above.
272 If not specified, the default is "mixed".
273
274 * `node['postgresql']['config_pgtune']['max_connections']` --
275 Specifies maximum number of connections expected.
276 If not specified, it depends on database type:
277 "web":200, "oltp":300, "dw":20, "mixed":80, "desktop":5
278
279 * `node['postgresql']['config_pgtune']['total_memory']` --
280 Specifies total system memory in kB. (E.g., "49416564kB".)
281 If not specified, it will be taken from Ohai automatic attributes.
282 This could be used to tune a system that isn't a dedicated database.
283
284 The default attributes created by this recipe are easy to override with
98f4a51 @davidc-donorschoose Better example for config_pgtune JSON attributes
davidc-donorschoose authored
285 normal attributes because of Chef attribute precedence. For example, if
286 you are running application benchmarks to try different buffer cache
287 sizes, you would experiment with this node JSON attribute:
19a261e @davidc-donorschoose Documented how optional config_* recipes autogenerate postgresql.conf
davidc-donorschoose authored
288
289 "postgresql": {
290 "config": {
160410c @davidc-donorschoose Refactored workhorse methods into libraries/default.rb
davidc-donorschoose authored
291 "shared_buffers": "3GB"
19a261e @davidc-donorschoose Documented how optional config_* recipes autogenerate postgresql.conf
davidc-donorschoose authored
292 }
293 }
294
295 Note that the recipe uses `max_connections` in its computations. If
296 you want to override that setting, you should specify
297 `node['postgresql']['config_pgtune']['max_connections']` instead of
298 `node['postgresql']['config']['max_connections']`.
299
300 Credits: This `postgresql::config_pgtune` recipe is based on the
301 [pgtune python script](https://github.com/gregs1104/pgtune)
302 developed by
303 [Greg Smith](http://notemagnet.blogspot.com/2008/11/automating-initial-postgresqlconf.html)
304 and
305 [other pgsql-hackers](http://www.postgresql.org/message-id/491C6CDC.8090506@agliodbs.com).
306
bf66ba1 @davidc-donorschoose Optional postgresql::config recipe to install useful administration t…
davidc-donorschoose authored
307 contrib
308 -------
309
310 Installs the packages defined in the
ecf7a1d @davidc-donorschoose Optionally install contrib module extensions listed in attribute.
davidc-donorschoose authored
311 `node['postgresql']['contrib']['packages']` attribute. The contrib
312 directory of the PostgreSQL distribution includes porting tools,
313 analysis utilities, and plug-in features that database engineers often
314 require. Some (like `pgbench`) are executable. Others (like
315 `pg_buffercache`) would need to be installed into the database.
316
1310184 @sethvargo Fix whitespace
sethvargo authored
317 Also installs any contrib module extensions defined in the
ecf7a1d @davidc-donorschoose Optionally install contrib module extensions listed in attribute.
davidc-donorschoose authored
318 `node['postgresql']['contrib']['extensions']` attribute. These will be
319 available in any subsequently created databases in the cluster, because
320 they will be installed into the `template1` database using the
321 `CREATE EXTENSION` command. For example, it is often necessary/helpful
322 for problem troubleshooting and maintenance planning to install the
323 views and functions in these [standard instrumentation extensions]
324 (http://www.postgresql.org/message-id/flat/4DC32600.6080900@pgexperts.com#4DD3D6C6.5060006@2ndquadrant.com):
325
326 node['postgresql']['contrib']['extensions'] = [
327 "pageinspect",
328 "pg_buffercache",
329 "pg_freespacemap",
330 "pgrowlocks",
331 "pg_stat_statements",
332 "pgstattuple"
333 ]
334
335 Note that the `pg_stat_statements` view only works if `postgresql.conf`
336 loads its shared library, which can be done with this node attribute:
337
338 node['postgresql']['config']['shared_preload_libraries'] = 'pg_stat_statements'
bf66ba1 @davidc-donorschoose Optional postgresql::config recipe to install useful administration t…
davidc-donorschoose authored
339
04b8d2e @GUI Add kitchen test for shared_preload_libraries & extension setup.
GUI authored
340 If using `shared_preload_libraries` in combination with the `contrib` recipe,
341 make sure that the `contrib` recipe is called before the `server` recipe (to
342 ensure the dependencies are installed and setup in order).
343
71009a9 @artiom update docs
artiom authored
344 apt\_pgdg\_postgresql
cdeb1cc @jtimberman release v2.1.0
jtimberman authored
345 ----------------------
346
71009a9 @artiom update docs
artiom authored
347 Enables the PostgreSQL Global Development Group yum repository
348 maintained by Devrim Gündüz for updated PostgreSQL packages.
349 (The PGDG is the groups that develops PostgreSQL.)
350 Automatically included if the `node['postgresql']['enable_pgdg_apt']`
cdeb1cc @jtimberman release v2.1.0
jtimberman authored
351 attribute is true. Also set the
352 `node['postgresql']['client']['packages']` and
353 `node['postgresql']['server]['packages']` to the list of packages to
354 use from this repository, and set the `node['postgresql']['version']`
355 attribute to the version to use (e.g., "9.2").
356
96f3473 @davidc-donorschoose Provide PGDG yum repo to install PostgreSQL 9.X on redhat-derived dis…
davidc-donorschoose authored
357 yum\_pgdg\_postgresql
358 ---------------------
359
360 Enables the PostgreSQL Global Development Group yum repository
361 maintained by Devrim Gündüz for updated PostgreSQL packages.
362 (The PGDG is the groups that develops PostgreSQL.)
363 Automatically included if the `node['postgresql']['enable_pgdg_yum']`
364 attribute is true. Also use `override_attributes` to set a number of
365 values that will need to have embedded version numbers. For example:
366
367 node['postgresql']['enable_pgdg_yum'] = true
368 node['postgresql']['version'] = "9.2"
369 node['postgresql']['dir'] = "/var/lib/pgsql/9.2/data"
5da0db9 @peterjmit Missing attribute in docs for yum_pgdg_postgresql
peterjmit authored
370 node['postgresql']['config']['data_directory'] = node['postgresql']['dir']
43cacd8 @marbe COOK-3076
marbe authored
371 node['postgresql']['client']['packages'] = ["postgresql92", "postgresql92-devel"]
96f3473 @davidc-donorschoose Provide PGDG yum repo to install PostgreSQL 9.X on redhat-derived dis…
davidc-donorschoose authored
372 node['postgresql']['server']['packages'] = ["postgresql92-server"]
373 node['postgresql']['server']['service_name'] = "postgresql-9.2"
374 node['postgresql']['contrib']['packages'] = ["postgresql92-contrib"]
375
b9dc273 @davidc-donorschoose Moved hash for looking up http://yum.postgresql.org links into an att…
davidc-donorschoose authored
376 You may set `node['postgresql']['pgdg']['repo_rpm_url']` attributes
377 to pick up recent [PGDG repo packages](http://yum.postgresql.org/repopackages.php).
378
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
379 Resources/Providers
380 ===================
381
382 See the [database](http://community.opscode.com/cookbooks/database)
383 for resources and providers that can be used for managing PostgreSQL
384 users and databases.
385
386 Usage
387 =====
388
389 On systems that need to connect to a PostgreSQL database, add to a run
390 list `recipe[postgresql]` or `recipe[postgresql::client]`.
391
392 On systems that should be PostgreSQL servers, use
393 `recipe[postgresql::server]` on a run list. This recipe does set a
ef8b7ae @davidc-donorschoose Document problems with postgres "encrypted password" attribute.
davidc-donorschoose authored
394 password for the `postgres` user.
395 If you're using `chef server`, if the attribute
396 `node['postgresql']['password']['postgres']` is not found,
397 the recipe generates a random password and performs a node.save.
398 (TODO: This is broken, as it disables the password.)
399 If you're using `chef-solo`, you'll need
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
400 to set the attribute `node['postgresql']['password']['postgres']` in
401 your node's `json_attribs` file or in a role.
402
54fa215 @jtimberman COOK-1900 - update readme for ssl use
jtimberman authored
403 On Debian family systems, SSL will be enabled, as the packages on
404 Debian/Ubuntu also generate the SSL certificates. If you use another
405 platform and wish to use SSL in postgresql, then generate your SSL
406 certificates and distribute them in your own cookbook, and set the
407 `node['postgresql']['config']['ssl']` attribute to true in your
408 role/cookboook/node.
409
6d084b2 @btomasini [COOK-3851] Allow config file change notification type to be speci…
btomasini authored
410 On server systems, the postgres server is restarted when a configuration
411 file changes. This can be changed to reload only by setting the
412 following attribute:
413
414 node['postgresql']['server']['config_change_notify'] = :reload
415
8251dcb @jtimberman [COOK-1901] - fail a solo run if postgres password isnt set
jtimberman authored
416 Chef Solo Note
417 ==============
418
419 The following node attribute is stored on the Chef Server when using
420 `chef-client`. Because `chef-solo` does not connect to a server or
421 save the node object at all, to have the password persist across
422 `chef-solo` runs, you must specify them in the `json_attribs` file
423 used. For Example:
424
425 {
426 "postgresql": {
427 "password": {
428 "postgres": "iloverandompasswordsbutthiswilldo"
429 }
430 },
431 "run_list": ["recipe[postgresql::server]"]
432 }
433
ef8b7ae @davidc-donorschoose Document problems with postgres "encrypted password" attribute.
davidc-donorschoose authored
434 That should actually be the "encrypted password" instead of cleartext,
435 so you should generate it as an md5 hash using the PostgreSQL algorithm.
436
437 * You could copy the md5-hashed password from an existing postgres
438 database if you have `postgres` access and want to use the same password:<br>
439 `select * from pg_shadow where usename='postgres';`
440 * You can run this from any postgres database session to use a new password:<br>
441 `select 'md5'||md5('iloverandompasswordsbutthiswilldo'||'postgres');`
442 * You can run this from a linux commandline:<br>
443 `echo -n 'iloverandompasswordsbutthiswilldo''postgres' | openssl md5 | sed -e 's/.* /md5/'`
444
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
445 License and Author
446 ==================
447
3b3b086 @jtimberman [COOK-1871] - documentation, style updates
jtimberman authored
448 - Author:: Joshua Timberman (<joshua@opscode.com>)
449 - Author:: Lamont Granquist (<lamont@opscode.com>)
450 - Author:: Chris Roberts (<chrisroberts.code@gmail.com>)
19a261e @davidc-donorschoose Documented how optional config_* recipes autogenerate postgresql.conf
davidc-donorschoose authored
451 - Author:: David Crane (<davidc@donorschoose.org>)
bd9838c @slyness maintainer information clean up.
slyness authored
452 - Author:: Aaron Baer (<aaron@hw-ops.com>)
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
453
454 Licensed under the Apache License, Version 2.0 (the "License");
455 you may not use this file except in compliance with the License.
456 You may obtain a copy of the License at
457
458 http://www.apache.org/licenses/LICENSE-2.0
459
460 Unless required by applicable law or agreed to in writing, software
461 distributed under the License is distributed on an "AS IS" BASIS,
462 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
463 See the License for the specific language governing permissions and
464 limitations under the License.
Something went wrong with that request. Please try again.