Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 460 lines (356 sloc) 17.925 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 specifie...
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 tool...
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 distro...
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 commenta...
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 commenta...
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 tool...
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 tool...
davidc-donorschoose authored
339
71009a9 @artiom update docs
artiom authored
340 apt\_pgdg\_postgresql
cdeb1cc @jtimberman release v2.1.0
jtimberman authored
341 ----------------------
342
71009a9 @artiom update docs
artiom authored
343 Enables the PostgreSQL Global Development Group yum repository
344 maintained by Devrim Gündüz for updated PostgreSQL packages.
345 (The PGDG is the groups that develops PostgreSQL.)
346 Automatically included if the `node['postgresql']['enable_pgdg_apt']`
cdeb1cc @jtimberman release v2.1.0
jtimberman authored
347 attribute is true. Also set the
348 `node['postgresql']['client']['packages']` and
349 `node['postgresql']['server]['packages']` to the list of packages to
350 use from this repository, and set the `node['postgresql']['version']`
351 attribute to the version to use (e.g., "9.2").
352
96f3473 @davidc-donorschoose Provide PGDG yum repo to install PostgreSQL 9.X on redhat-derived distro...
davidc-donorschoose authored
353 yum\_pgdg\_postgresql
354 ---------------------
355
356 Enables the PostgreSQL Global Development Group yum repository
357 maintained by Devrim Gündüz for updated PostgreSQL packages.
358 (The PGDG is the groups that develops PostgreSQL.)
359 Automatically included if the `node['postgresql']['enable_pgdg_yum']`
360 attribute is true. Also use `override_attributes` to set a number of
361 values that will need to have embedded version numbers. For example:
362
363 node['postgresql']['enable_pgdg_yum'] = true
364 node['postgresql']['version'] = "9.2"
365 node['postgresql']['dir'] = "/var/lib/pgsql/9.2/data"
43cacd8 @marbe COOK-3076
marbe authored
366 node['postgresql']['client']['packages'] = ["postgresql92", "postgresql92-devel"]
96f3473 @davidc-donorschoose Provide PGDG yum repo to install PostgreSQL 9.X on redhat-derived distro...
davidc-donorschoose authored
367 node['postgresql']['server']['packages'] = ["postgresql92-server"]
368 node['postgresql']['server']['service_name'] = "postgresql-9.2"
369 node['postgresql']['contrib']['packages'] = ["postgresql92-contrib"]
370
b9dc273 @davidc-donorschoose Moved hash for looking up http://yum.postgresql.org links into an attrib...
davidc-donorschoose authored
371 You may set `node['postgresql']['pgdg']['repo_rpm_url']` attributes
372 to pick up recent [PGDG repo packages](http://yum.postgresql.org/repopackages.php).
373
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
374 Resources/Providers
375 ===================
376
377 See the [database](http://community.opscode.com/cookbooks/database)
378 for resources and providers that can be used for managing PostgreSQL
379 users and databases.
380
381 Usage
382 =====
383
384 On systems that need to connect to a PostgreSQL database, add to a run
385 list `recipe[postgresql]` or `recipe[postgresql::client]`.
386
387 On systems that should be PostgreSQL servers, use
388 `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
389 password for the `postgres` user.
390 If you're using `chef server`, if the attribute
391 `node['postgresql']['password']['postgres']` is not found,
392 the recipe generates a random password and performs a node.save.
393 (TODO: This is broken, as it disables the password.)
394 If you're using `chef-solo`, you'll need
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
395 to set the attribute `node['postgresql']['password']['postgres']` in
396 your node's `json_attribs` file or in a role.
397
54fa215 @jtimberman COOK-1900 - update readme for ssl use
jtimberman authored
398 On Debian family systems, SSL will be enabled, as the packages on
399 Debian/Ubuntu also generate the SSL certificates. If you use another
400 platform and wish to use SSL in postgresql, then generate your SSL
401 certificates and distribute them in your own cookbook, and set the
402 `node['postgresql']['config']['ssl']` attribute to true in your
403 role/cookboook/node.
404
6d084b2 @btomasini [COOK-3851] Allow config file change notification type to be specifie...
btomasini authored
405 On server systems, the postgres server is restarted when a configuration
406 file changes. This can be changed to reload only by setting the
407 following attribute:
408
409 node['postgresql']['server']['config_change_notify'] = :reload
410
8251dcb @jtimberman [COOK-1901] - fail a solo run if postgres password isnt set
jtimberman authored
411 Chef Solo Note
412 ==============
413
414 The following node attribute is stored on the Chef Server when using
415 `chef-client`. Because `chef-solo` does not connect to a server or
416 save the node object at all, to have the password persist across
417 `chef-solo` runs, you must specify them in the `json_attribs` file
418 used. For Example:
419
420 {
421 "postgresql": {
422 "password": {
423 "postgres": "iloverandompasswordsbutthiswilldo"
424 }
425 },
426 "run_list": ["recipe[postgresql::server]"]
427 }
428
ef8b7ae @davidc-donorschoose Document problems with postgres "encrypted password" attribute.
davidc-donorschoose authored
429 That should actually be the "encrypted password" instead of cleartext,
430 so you should generate it as an md5 hash using the PostgreSQL algorithm.
431
432 * You could copy the md5-hashed password from an existing postgres
433 database if you have `postgres` access and want to use the same password:<br>
434 `select * from pg_shadow where usename='postgres';`
435 * You can run this from any postgres database session to use a new password:<br>
436 `select 'md5'||md5('iloverandompasswordsbutthiswilldo'||'postgres');`
437 * You can run this from a linux commandline:<br>
438 `echo -n 'iloverandompasswordsbutthiswilldo''postgres' | openssl md5 | sed -e 's/.* /md5/'`
439
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
440 License and Author
441 ==================
442
3b3b086 @jtimberman [COOK-1871] - documentation, style updates
jtimberman authored
443 - Author:: Joshua Timberman (<joshua@opscode.com>)
444 - Author:: Lamont Granquist (<lamont@opscode.com>)
445 - Author:: Chris Roberts (<chrisroberts.code@gmail.com>)
19a261e @davidc-donorschoose Documented how optional config_* recipes autogenerate postgresql.conf
davidc-donorschoose authored
446 - Author:: David Crane (<davidc@donorschoose.org>)
bd9838c @slyness maintainer information clean up.
slyness authored
447 - Author:: Aaron Baer (<aaron@hw-ops.com>)
0fde0a6 @jtimberman postgresql v0.99.0, and move README from .rdoc to .md
jtimberman authored
448
449 Licensed under the Apache License, Version 2.0 (the "License");
450 you may not use this file except in compliance with the License.
451 You may obtain a copy of the License at
452
453 http://www.apache.org/licenses/LICENSE-2.0
454
455 Unless required by applicable law or agreed to in writing, software
456 distributed under the License is distributed on an "AS IS" BASIS,
457 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
458 See the License for the specific language governing permissions and
459 limitations under the License.
Something went wrong with that request. Please try again.