On Fri, Dec 29, 2000 at 09:31:14PM +0100, Philipp Rotmann, Linksystem Muenchen wrote:
>
> Hi Alex,
>
> thanks for your suggestion -- but firsthand, it seems to me that
> the current state of my Midgard database is not fully consistent
> with your assumptions (after database-upgrade and one partially
> failed execution of dbinstall) ... therefore, I'm describing
> some of my observations below and wait for your 'go!' before
> I'll actually change something.
>
> On 29.12.00 (20:55), Alexander Bokovoy wrote:
> > 1. Backup database
>
> Done already before the upgrade, of course.
>
> > 2. Using mysql console, rename Asgard's components (Root
> > pages, Styles, /Asgard snippetdir) to different names,
> > change host info.
>
> My 'page' table features lots of empty records (to be exact, 52
> records with only id, up=0, style=0, author=0, changed=
> 0000-00-00 and sitegroup=0 set -- which are the defaults). No
> Asgard pages have been installed, only two new pages for the old
> Adminsite (snippetdir and snippet).
Empty pages are result of wrong or absent repligard table. Updating
scenario is following: repligard looks in its table to find requested
GUID and creates new record with this GUID if it absent. For GUIDs
without actual information (i.e. links to person in article when person
doesn't exist in database yet) an empty record has created. Since wrong
religard table prevents correct GUID creation, next query for this
record will result in next empty record creation. You should delete them
safely, they are result of incorrect database structure.
> My 'style' table surprisingly does feature Asgard records --
> but for every Asgard record ('Asgard' .. 'Asgard Main Frame',
> four of them) there's one empty record as well.
The same.
> The 'snippetdir' table is totally empty, as well as the
> 'snippet' table; there is no Asgard record in the 'host' table.
So, delete all empty records in all tables.
> > 3. Check for correct Repligard table in your database;
>
> That would be this one:
>
> | mysql> describe repligard;
> | +-----------+-------------+------+-----+---------------------+-------+
> | | Field | Type | Null | Key | Default | Extra |
> | +-----------+-------------+------+-----+---------------------+-------+
> | | id | int(11) | | | 0 | |
> | | timestamp | datetime | | | 0000-00-00 00:00:00 | |
> | | updated | datetime | | | 0000-00-00 00:00:00 | |
> | | realm | varchar(32) | | | | |
> | | tag | varchar(32) | | MUL | | |
> | | sitegroup | int(11) | | | 0 | |
> | +-----------+-------------+------+-----+---------------------+-------+
> | 6 rows in set (0.00 sec)
Yes, this is correct.
> > 4. run 'delete from repligard;' in mysql's console;
> > 5. Install new Asgard.
> > 6. Run 'repligard -m' for this database;
> > 7. Delete old Asgard's components from new Asgard interface.
> > 8. Export your database using Asgard and delete from XML file
> > all records with attribute 'deleted="<SOME-DATE>"'
>
> ... and re-import the XML file, I guess.
No, this is to be sure that all info is in place. You can use it
later for quick restoration of data or to analyze what's wrong.
--
Sincerely yours, Alexander Bokovoy
The Midgard Project | www.midgard-project.org | Aurora R&D team
Minsk Linux Users Group | www.minsk-lug.net | www.aurora-linux.com
IPLabs Linux Team | linux.iplabs.ru | Architecte Open Source
-- "Faith: not *wanting* to know what is true."
-- Friedrich Nietzsche
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]