45 lines
1.8 KiB
Plaintext
45 lines
1.8 KiB
Plaintext
// $Id$
|
|
|
|
CREATE THE PostgreSQL DATABASE
|
|
------------------------------
|
|
|
|
Note that the database must be created with UTF-8 (Unicode) encoding.
|
|
|
|
1. CREATE DATABASE USER
|
|
|
|
This step is only necessary if you don't already have a user set up (e.g.
|
|
by your host) or you want to create new user for use with Drupal only. The
|
|
following command creates a new user named "username" and asks for a
|
|
password for that user:
|
|
|
|
createuser --pwprompt --encrypted --no-createrole --no-createdb username
|
|
|
|
If there are no errors then the command was successful
|
|
|
|
2. CREATE THE DRUPAL DATABASE
|
|
|
|
This step is only necessary if you don't already have a database set up (e.g.
|
|
by your host) or you want to create new database for use with Drupal only.
|
|
The following command creates a new database named "databasename", which is
|
|
owned by previously created "username":
|
|
|
|
createdb --encoding=UTF8 --owner=username databasename
|
|
|
|
If there are no errors then the command was successful
|
|
|
|
3. CREATE A SCHEMA OR SCHEMAS (Optional advanced)
|
|
|
|
Drupal will run across different schemas within your database if you so wish.
|
|
By default, Drupal runs inside the 'public' schema but you can use $db_prefix
|
|
inside settings.php to define a schema for Drupal to inside of or specify tables
|
|
that are shared inside of a separate schema. Drupal will not create schemas for
|
|
you, infact the user that Drupal runs as should not be allowed to. You'll need
|
|
execute the SQL below as a superuser (such as a postgres user) and replace
|
|
'drupaluser' with the username that Drupal uses to connect to PostgreSQL with
|
|
and replace schema_name with a schema name you wish to use such as 'shared':
|
|
|
|
CREATE SCHEMA schema_name AUTHORIZATION drupaluser;
|
|
|
|
Do this for as many schemas as you need. See default.settings.php for how to
|
|
set which tables use which schemas.
|