Index: openacs-4/packages/acs-core-docs/www/xml/for-everyone/release-notes.xml =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/xml/for-everyone/release-notes.xml,v diff -u -r1.11.2.3 -r1.11.2.4 --- openacs-4/packages/acs-core-docs/www/xml/for-everyone/release-notes.xml 8 Dec 2003 16:58:17 -0000 1.11.2.3 +++ openacs-4/packages/acs-core-docs/www/xml/for-everyone/release-notes.xml 15 Dec 2003 16:29:00 -0000 1.11.2.4 @@ -42,7 +42,7 @@ After installation, the full documentation set can be found by visiting - http://[your-host]/doc. + http://yourserver/doc. @@ -78,7 +78,7 @@ After installation, the full documentation set can be found by visiting - http://[your-host]/doc. + http://yourserver/doc. @@ -192,9 +192,20 @@ - The undocumented special handling of ~ and +variable+ in formtemplates has been removed in favor of - using <noparse> and \@variable\@ (the standard templating mechanisms). Locally - provided formtemplate styles still using these mechanisms will break. + With the release of OpenACS 5, PostgreSQL 7.2 is no longer supported. + Upgrades are supported from OpenACS 4.6.3 under Oracle or + PostgreSQL 7.3. + + + + + + The undocumented special handling of ~ and +variable+ in + formtemplates, found in packages/acs-templating/resources/*, + has been removed in favor of using <noparse> and + \@variable\@ (the standard templating mechanisms). Locally + provided formtemplate styles still using these mechanisms + will break. Index: openacs-4/packages/acs-core-docs/www/xml/install-guide/oracle.xml =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/xml/install-guide/oracle.xml,v diff -u -r1.12.2.4 -r1.12.2.5 --- openacs-4/packages/acs-core-docs/www/xml/install-guide/oracle.xml 15 Dec 2003 14:29:16 -0000 1.12.2.4 +++ openacs-4/packages/acs-core-docs/www/xml/install-guide/oracle.xml 15 Dec 2003 16:29:00 -0000 1.12.2.5 @@ -18,7 +18,7 @@ - OpenACS &version; does not yet work with Oracle 9i + OpenACS &version; will install with Oracle 9i but has not been extensively tested so may still have bugs or tuning issues. Index: openacs-4/packages/acs-core-docs/www/xml/install-guide/recovery.xml =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/xml/install-guide/recovery.xml,v diff -u -r1.6.2.7 -r1.6.2.8 --- openacs-4/packages/acs-core-docs/www/xml/install-guide/recovery.xml 15 Dec 2003 14:29:16 -0000 1.6.2.7 +++ openacs-4/packages/acs-core-docs/www/xml/install-guide/recovery.xml 15 Dec 2003 16:29:01 -0000 1.6.2.8 @@ -57,25 +57,26 @@ OpenACS installations comprise files and database contents. If you follow the reference install and put all files, including configuration files, in - /var/lib/aolserver/service0/, + /var/lib/aolserver/service0/, and back up the database nightly to a file in - /var/lib/aolserver/service0/database-backup, + /var/lib/aolserver/service0/database-backup, then you can apply standard file-based backup strategies to - /var/lib/aolserver/service0 + /var/lib/aolserver/service0 Manual backup and recovery This section describes how to make a one-time backup and - restore of the files and database. This is useful for rolling back to - known-good versions of a service, such as at initial + restore of the files and database. This is useful for rolling + back to known-good versions of a service, such as at initial installation and just before an upgrade. First, you back up the database to a file within the file tree. Then, you back up the file tree. All of the information needed to rebuild the site, - including the AOLserver config files, is then in tree for - regular file system backup. + including the AOLserver config files, is then in tree for regular + file system backup. + @@ -92,101 +93,96 @@ Download the backup script. Save the file export-oracle.txt as - /tmp/export-oracle.txt + /tmp/export-oracle.txt Login as root. The following commands will install the export script: - - [joeuser ~]$ su - - Password: *********** - [root ~]# cp /tmp/export-oracle.txt /usr/sbin/export-oracle - [root ~]# chmod 700 /usr/sbin/export-oracle + [joeuser ~]$ su - +[root ~]# cp /tmp/export-oracle.txt /usr/sbin/export-oracle +[root ~]# chmod 700 /usr/sbin/export-oracle Setup the export directory; this is the directory where backups will be stored. We recommend the directory - /ora8/m02/oracle-exports. + /ora8/m02/oracle-exports. - - [root ~]# mkdir /ora8/m02/oracle-exports - [root ~]# chown oracle.dba /ora8/m02/oracle-exports - [root ~]# chmod 770 /ora8/m02/oracle-exports + [root ~]# mkdir /ora8/m02/oracle-exports +[root ~]# chown oracle:dba /ora8/m02/oracle-exports +[root ~]# chmod 770 /ora8/m02/oracle-exports Now edit - /usr/sbin/export-oracle and + /usr/sbin/export-oracle and change the SERVICE_NAME and DATABASE_PASSWORD fields to their correct values. If you want to use a directory other than - /ora8/m02/oracle-exports, you + /ora8/m02/oracle-exports, you also need to change the exportdir setting. Test the export procedure by running the command: - - [root ~]# /usr/sbin/export-oracle - mv: /ora8/m02/oracle-exports/oraexport-service_name.dmp.gz: No such file or directory + [root ~]# /usr/sbin/export-oracle +mv: /ora8/m02/oracle-exports/oraexport-service_name.dmp.gz: No such file or directory - Export: Release 8.1.6.1.0 - Production on Sun Jun 11 18:07:45 2000 +Export: Release 8.1.6.1.0 - Production on Sun Jun 11 18:07:45 2000 - (c) Copyright 1999 Oracle Corporation. All rights reserved. +(c) Copyright 1999 Oracle Corporation. All rights reserved. - - Connected to: Oracle8i Enterprise Edition Release 8.1.6.1.0 - Production - With the Partitioning option - JServer Release 8.1.6.0.0 - Production - Export done in US7ASCII character set and US7ASCII NCHAR character set - . exporting pre-schema procedural objects and actions - . exporting foreign function library names for user SERVICE_NAME - . exporting object type definitions for user SERVICE_NAME - About to export SERVICE_NAME's objects ... - . exporting database links - . exporting sequence numbers - . exporting cluster definitions - . about to export SERVICE_NAME's tables via Conventional Path ... - . exporting synonyms - . exporting views - . exporting stored procedures - . exporting operators - . exporting referential integrity constraints - . exporting triggers - . exporting indextypes - . exporting bitmap, functional and extensible indexes - . exporting posttables actions - . exporting snapshots - . exporting snapshot logs - . exporting job queues - . exporting refresh groups and children - . exporting dimensions - . exporting post-schema procedural objects and actions - . exporting statistics - Export terminated successfully without warnings. - +Connected to: Oracle8i Enterprise Edition Release 8.1.6.1.0 - Production +With the Partitioning option +JServer Release 8.1.6.0.0 - Production +Export done in US7ASCII character set and US7ASCII NCHAR character set + . exporting pre-schema procedural objects and actions + . exporting foreign function library names for user SERVICE_NAME + . exporting object type definitions for user SERVICE_NAME + About to export SERVICE_NAME's objects ... + . exporting database links + . exporting sequence numbers + . exporting cluster definitions + . about to export SERVICE_NAME's tables via Conventional Path ... + . exporting synonyms + . exporting views + . exporting stored procedures + . exporting operators + . exporting referential integrity constraints + . exporting triggers + . exporting indextypes + . exporting bitmap, functional and extensible indexes + . exporting posttables actions + . exporting snapshots + . exporting snapshot logs + . exporting job queues + . exporting refresh groups and children + . exporting dimensions + . exporting post-schema procedural objects and actions + . exporting statistics +Export terminated successfully without warnings. + PostgreSQL Create a backup file and verify that it was created and has a reasonable size (several megabytes). [root root]# su - service0 - [service0 service0]$ pg_dump -f /var/lib/aolserver/service0/database-backup/before_upgrade_to_4.6.dmp service0 - [service0 service0]$ ls -al /var/lib/aolserver/service0/database-backup/before_upgrade_to_4.6.dmp - -rw-rw-r-x 1 service0 service0 4005995 Feb 21 18:28 /var/lib/aolserver/service0/database-backup/before_upgrade_to_4.6.dmp - [service0 service0]$ exit - [root root]# - su - service0 - pg_dump -f /var/lib/aolserver/service0/database-backup/before_upgrade_to_4.6.dmp openacs-dev - ls -al /var/lib/aolserver/service0/database-backup/before_upgrade_to_4.6.dmp - exit +[service0 service0]$ pg_dump -f /var/lib/aolserver/service0/database-backup/before_upgrade_to_4.6.dmp service0 +[service0 service0]$ ls -al /var/lib/aolserver/service0/database-backup/before_upgrade_to_4.6.dmp +-rw-rw-r-x 1 service0 service0 4005995 Feb 21 18:28 /var/lib/aolserver/service0/database-backup/before_upgrade_to_4.6.dmp +[service0 service0]$ exit +[root root]# +su - service0 +pg_dump -f /var/lib/aolserver/service0/database-backup/before_upgrade_to_4.6.dmp openacs-dev +ls -al /var/lib/aolserver/service0/database-backup/before_upgrade_to_4.6.dmp +exit @@ -195,7 +191,7 @@ Back up the file system Back up all of the files in the service, including the database backup file but excluding the auto-generated - supervise directory, which is + supervise directory, which is unneccesary and has complicated permissions. In the tar command, @@ -211,7 +207,7 @@ s preserves file sort order - j compresses the output with bz2. + z compresses the output with gzip. The --exclude clauses skips some daemontools files that @@ -226,37 +222,38 @@ The last clause, - /var/lib/aolserver/service0/, + /var/lib/aolserver/service0/, specifies the starting point for backup. Tar defaults to recursive backup. [root root]# su - service0 - [service0 service0]$ tar -cpsj --exclude /var/lib/aolserver/service0/etc/daemontools/supervise --file /tmp/service0-backup.tar.bz2 /var/lib/aolserver/service0/ - tar: Removing leading `/' from member names - [service0 service0]$ +[service0 service0]$ tar -cpsz --exclude /var/lib/aolserver/service0/etc/daemontools/supervise \ + --file /tmp/service0-backup.tar.gz /var/lib/aolserver/service0/ +tar: Removing leading `/' from member names +[service0 service0]$ Suffer a catastrophic failure on your production system (We'll simulate this step) [root root]# svc -d /service/service0 - [root root]# mv /var/lib/aolserver/service0/ /var/lib/aolserver/service0.lost - [root root]# rm /service/service0 - rm: remove symbolic link `/service/service0'? y - [root root]# ps -auxw | grep service0 - root 1496 0.0 0.0 1312 252 ? S 16:58 0:00 supervise service0 - [root root]# kill 1496 - [root root]# ps -auxw | grep service0 - [root root]# su - postgres - [postgres pgsql]$ dropdb service0 - DROP DATABASE - [postgres pgsql]$ dropuser service0 - DROP USER - [postgres pgsql]$ exit - logout - [root root]# +[root root]# mv /var/lib/aolserver/service0/ /var/lib/aolserver/service0.lost +[root root]# rm /service/service0 +rm: remove symbolic link `/service/service0'? y +[root root]# ps -auxw | grep service0 +root 1496 0.0 0.0 1312 252 ? S 16:58 0:00 supervise service0 +[root root]# kill 1496 +[root root]# ps -auxw | grep service0 +[root root]# su - postgres +[postgres pgsql]$ dropdb service0 +DROP DATABASE +[postgres pgsql]$ dropuser service0 +DROP USER +[postgres pgsql]$ exit +logout +[root root]# @@ -274,12 +271,10 @@ Restore the OpenACS files and database backup file. [root root]# su - service0 - [service0 service0]$ cd /var/lib/aolserver - [service0 aolserver]$ tar xjf /tmp/service0-backup.tar.bz2 - [service0 aolserver]$ chmod -R 775 service0 - [service0 aolserver]$ chown -R service0.web service0 - - +[service0 service0]$ cd /var/lib/aolserver +[service0 aolserver]$ tar xzf /tmp/service0-backup.tar.gz +[service0 aolserver]$ chmod -R 775 service0 +[service0 aolserver]$ chown -R service0.web service0 Restore the database @@ -304,33 +299,31 @@ Postgres - + Because of a bug in Postgres backup-recovery, database objects are not guaranteed to be created in the right order. To compensate, we pre-creating some critical items first, which leads to some harmless errors. - Because of a bug in Postgres backup-recovery, database objects are not guaranteed to be created in the right order. To compensate, we pre-creating some critical items first, which leads to some harmless errors. [root root]# su - postgres - [postgres pgsql]$ createuser service0 - Shall the new user be allowed to create databases? (y/n) y - Shall the new user be allowed to create more new users? (y/n) y - CREATE USER - [service0 web]$ createdb service0 - CREATE DATABASE - [service0 web]$ psql -f /var/lib/aolserver/service0/packages/acs-kernel/sql/postgresql/postgresql.sql service0 - (many lines omitted) - [service0 web]$ psql service0 < /var/lib/aolserver/service0/database-backup/database-backup.dmp - (many lines omitted) - [service0 web]$ exit - [postgres pgsql]$ exit - logout - +[postgres ~]$ createuser service0 +Shall the new user be allowed to create databases? (y/n) y +Shall the new user be allowed to create more new users? (y/n) y +CREATE USER +[postgres ~]$ su - service0 +[service0 ~]$ createdb service0 +CREATE DATABASE +[service0 ~]$ psql -f /var/lib/aolserver/service0/packages/acs-kernel/sql/postgresql/postgresql.sql service0 +(many lines omitted) +[service0 ~]$ psql service0 < /var/lib/aolserver/service0/database-backup/database-backup.dmp +(many lines omitted) +[service0 ~]$ exit +[postgres ~]$ exit +logout Activate the service [root root]# ln -s /var/lib/aolserver/service0/etc/daemontools /service/service0 - [root root]# sleep 10 - [root root]# svgroup web /service/service0 - [root root]# +[root root]# sleep 10 +[root root]# svgroup web /service/service0 @@ -339,13 +332,13 @@ Automated Backup (OPTIONAL) - The recommended backup strategy for a production sit is to use an automated script which first backs up the database to a file in /var/lib/aolserver/service0/database-backup and then backs up all of /var/lib/aolserver/service0 to a single zip file, and then copies that zip file to another computer. + The recommended backup strategy for a production sit is to use an automated script which first backs up the database to a file in /var/lib/aolserver/service0/database-backup and then backs up all of /var/lib/aolserver/service0 to a single zip file, and then copies that zip file to another computer. Make sure that the manual backup process described above works. - Customize the default backup script. Edit /var/lib/aolserver/service0/etc/backup.sh with your specific parameters. + Customize the default backup script. Edit /var/lib/aolserver/service0/etc/backup.sh with your specific parameters. @@ -363,39 +356,39 @@ Using CVS for backup-recovery CVS-only backup is often appropriate for development sites. If you are already using CVS and your data is not important, you probably don't - need to do anything to back up your files. Just make - sure that your current work is checked into the system. - You can then roll back based on date - note the - current system time, down to the minute. For maximum - safety, you can apply a tag to your current - files. You will still need to back up your database. - Note that, if you did the CVS options in this document, the /var/lib/aolserver/service0/etc directory is not included in cvs and you may want to add it. + need to do anything to back up your files. Just make + sure that your current work is checked into the system. + You can then roll back based on date - note the + current system time, down to the minute. For maximum + safety, you can apply a tag to your current + files. You will still need to back up your database. + Note that, if you did the CVS options in this document, the /var/lib/aolserver/service0/etc directory is not included in cvs and you may want to add it. [root root]# su - service0 - [service0 service0]$ cd /var/lib/aolserver/service0 - [service0 service0]$ cvs commit -m "last-minute commits before upgrade to 4.6" - cvs commit: Examining . - cvs commit: Examining bin - (many lines omitted) - [service0 service0]$ cvs tag before_upgrade_to_4_6 - cvs server: Tagging bin - T bin/acs-4-0-publish.sh - T bin/ad-context-server.pl - (many lines omitted) - [service0 service0]$ exit - [root root]# - su - service0 - cd /var/lib/aolserver/service0 - cvs commit -m "last-minute commits before upgrade to 4.6" - cvs tag before_upgrade_to_4_6 - exit +[service0 service0]$ cd /var/lib/aolserver/service0 +[service0 service0]$ cvs commit -m "last-minute commits before upgrade to 4.6" +cvs commit: Examining . +cvs commit: Examining bin +(many lines omitted) +[service0 service0]$ cvs tag before_upgrade_to_4_6 +cvs server: Tagging bin +T bin/acs-4-0-publish.sh +T bin/ad-context-server.pl +(many lines omitted) +[service0 service0]$ exit +[root root]# +su - service0 +cd /var/lib/aolserver/service0 +cvs commit -m "last-minute commits before upgrade to 4.6" +cvs tag before_upgrade_to_4_6 +exit To restore files from a cvs tag such as the one used above: [root root]# su - service0 - [service0 service0]$ cd /var/lib/aolserver/service0 - [service0 service0]$ cvs up -r current - [service0 service0]$ exit - su - service0 - cd /var/lib/aolserver/service0 - cvs up -r current +[service0 service0]$ cd /var/lib/aolserver/service0 +[service0 service0]$ cvs up -r current +[service0 service0]$ exit +su - service0 +cd /var/lib/aolserver/service0 +cvs up -r current ($Id$) - \ No newline at end of file + Index: openacs-4/packages/acs-core-docs/www/xml/install-guide/upgrade.xml =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/xml/install-guide/upgrade.xml,v diff -u -r1.6.2.4 -r1.6.2.5 --- openacs-4/packages/acs-core-docs/www/xml/install-guide/upgrade.xml 15 Dec 2003 14:18:48 -0000 1.6.2.4 +++ openacs-4/packages/acs-core-docs/www/xml/install-guide/upgrade.xml 15 Dec 2003 16:29:01 -0000 1.6.2.5 @@ -181,7 +181,7 @@ Unpack the new files into a working directory. [root root]# su - nsadmin [nsadmin aolserver]$ cd /tmp -[nsadmin tmp]$ tar xzv openacs-4-6.tgz +[nsadmin tmp]$ tar xzf openacs-4-6.tgz [nsadmin tmp]$ cd openacs-4.6 Import the new files into your cvs repository; where they match existing files, they will become the new version of the file.