Differences between revisions 5 and 6
Revision 5 as of 2007-07-17 20:46:05
Size: 626
Editor: KarlPinc
Comment: Fixed command.
Revision 6 as of 2007-07-19 19:37:32
Size: 2976
Editor: biodhcp-185-86
Comment: addition of restore code
Deletions are marked like this. Additions are marked like this.
Line 12: Line 12:

== Backing up the Database or Schemas ==

 * When Backing up the DB, the 'help' directory can offer some direction
{{{
[YOU@papio ~]$ pg_dump --help}}}

== Restoring the Database or Schemas ==

 * If you are going to want to restore tables within the schema:
{{{
[YOU@papio ~]$ pg_dump --file YOURBACKUP.sql --host=localhost --format=c schema=fecal --user lmaryott babase}}}
 
 * after the backup file is created, it is useful to be able to look at the file to ensure you have the correct search path (the tables are getting put in the correct place ie. your schema) one way to do this is to view what the command is doing by having the output displayed in your unix window
{{{
[YOU@papio ~]$ pg_restore --host=localhost --file=/dev/stdout --user YOU YOURBACKUP.sql}}}
 * you can also save this information into a file, rather than having it just display in your unix window
{{{
[YOU@papio ~]$ pg_restore --host=localhost --file=YOURRESTORE.sql --user YOU YOURBACKUP.sql}}}
 * you can then just read the output within the window as well as having saved it for restore use

{{{
[YOU@papio ~]$ less YOURRESTORE.SQL}}}

 * the output on your screen will then resemble the text below:
{{{CREATE SCHEMA schemaname1;


SET search_path = schemaname1, pg_catalog;

SET default_tablespace = '';

SET default_with_oids = false;}}}

 * If you desire for the data to be restored to a different location, you can use the emacs application to edit the text of YOURRESTORE.sql.
{{{
[YOU@papio ~]$ emacs -nw YOURRESTORE.sql}}}
 * IT IS IMPORTANT YOU NOT USE EMACS WITHOUT KNOWLEDGE OF HOW TO EXIT OUT OF IT!!!!!!!
 * After changing the first search path in the file, it should look like the following
{{{CREATE SCHEMA schemaname1;


SET search_path = schemaname2, pg_catalog;

SET default_tablespace = '';

SET default_with_oids = false;}}}
 * the PSQL terminal should then be used for the restore, at which point the tables from your schema will be created in the schema specified in the search path
{{{
[YOU@papio ~]$ psql --dbname=babase --user=YOU --host=localhost < YOURRESTORE.sql}}}
 * If you enter the previous command without the '< YOURRESTORE.sql', you will be prompted with "babase>" This is just another front end for babase, and any queries could also be performed here, just for future reference.

This page will be used to store codes, protocols, and procedures for use by the Data Managers.

Adding a User to Babase

  • Users can be added to babase, as well as a schema created, and permissions set, by completing the following steps using a SSH client.

PGPASSWORD='*********' babase-user-add username babase_readers
  • The ********* here would be the babase_admin password
  • The Username selected will become not only the babase username and temporary password but also the schema name.
  • It is very important that the user immediately change their password using PPA's password change option.

Backing up the Database or Schemas

  • When Backing up the DB, the 'help' directory can offer some direction

[YOU@papio ~]$ pg_dump --help

Restoring the Database or Schemas

  • If you are going to want to restore tables within the schema:

[YOU@papio ~]$ pg_dump --file YOURBACKUP.sql --host=localhost --format=c schema=fecal --user lmaryott babase
  • after the backup file is created, it is useful to be able to look at the file to ensure you have the correct search path (the tables are getting put in the correct place ie. your schema) one way to do this is to view what the command is doing by having the output displayed in your unix window

[YOU@papio ~]$ pg_restore --host=localhost --file=/dev/stdout --user YOU YOURBACKUP.sql
  • you can also save this information into a file, rather than having it just display in your unix window

[YOU@papio ~]$ pg_restore --host=localhost --file=YOURRESTORE.sql --user YOU YOURBACKUP.sql
  • you can then just read the output within the window as well as having saved it for restore use

[YOU@papio ~]$ less YOURRESTORE.SQL
  • the output on your screen will then resemble the text below:

{{{CREATE SCHEMA schemaname1;

SET search_path = schemaname1, pg_catalog;

SET default_tablespace = ;

SET default_with_oids = false;}}}

  • If you desire for the data to be restored to a different location, you can use the emacs application to edit the text of YOURRESTORE.sql.

[YOU@papio ~]$ emacs -nw YOURRESTORE.sql
  • IT IS IMPORTANT YOU NOT USE EMACS WITHOUT KNOWLEDGE OF HOW TO EXIT OUT OF IT!!!!!!!
  • After changing the first search path in the file, it should look like the following

{{{CREATE SCHEMA schemaname1;

SET search_path = schemaname2, pg_catalog;

SET default_tablespace =

;

SET default_with_oids = false;}}}

  • the PSQL terminal should then be used for the restore, at which point the tables from your schema will be created in the schema specified in the search path

[YOU@papio ~]$ psql --dbname=babase --user=YOU --host=localhost < YOURRESTORE.sql
  • If you enter the previous command without the '< YOURRESTORE.sql', you will be prompted with "babase>" This is just another front end for babase, and any queries could also be performed here, just for future reference.

DataManagement (last edited 2024-06-20 14:58:32 by JakeGordon)

Wiki content based upon work supported by the National Science Foundation under Grant Nos. 0323553 and 0323596. Any opinions, findings, conclusions or recommendations expressed in this material are those of the wiki contributor(s) and do not necessarily reflect the views of the National Science Foundation.