ee25310d |
1 | See MySQL for list of things that have to be done for any database\r |
2 | (both MySQL and Postgres).\r |
3 | \r |
4 | = Postgres-specific setup =\r |
5 | \r |
6 | 1. $dir = /afs/hcoop.net/common/databases/USERNAME/postgres\r |
7 | \r |
8 | If $dir does NOT exist:\r |
9 | \r |
10 | 1. sudo -u postgres psql -c "CREATE USER '''USERNAME'''" template1\r |
11 | 1. mkdir -p $dir\r |
12 | 1. chown postgres:postgres "$dir"\r |
13 | 1. fs setacl -dir $dir -acl postgres write\r |
14 | 1. fs setacl -dir $dir -acl databases none # (keep out other databases, just in case)\r |
15 | 1. fs setacl -dir $dir -acl system:backup rl # (should be inherited from parent dir)\r |
16 | 1. sudo -u postgres psql -c "CREATE TABLESPACE user_'''USERNAME''' OWNER '''USERNAME''' LOCATION '$dir'" template1\r |
17 | \r |
18 | When it does, go directly to database creation step:\r |
19 | \r |
20 | 1. sudo -u postgres createdb -O '''USERNAME''' -D user_'''USERNAME''' '''DBNAME'''\r |