PostgreSQL
La base de données la plus sophistiquée au monde.

Ouverture de session

Navigation

Contactez-nous

Administration du site :
"equipe chez postgresqlfr point org"

Contact presse :
"fr chez postgresql point org"

Contact association :
"bureau chez postgresqlfr point org"

Questions PostgreSQL :
 IRC :
  serveur irc.freenode.net
  canal #postgresqlfr

Recherche

Accéder aux archives

« Octobre 2008  
Lun Mar Mer Jeu Ven Sam Dim
  2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31  

Syndication

Flux XML

Sondage

Quelle est la version de PostgreSQL la plus répandue sur vos serveurs ?
8.3
10%
8.2
42%
8.1
40%
8.0
2%
7.4
6%
7.3 ou antérieure
0%
Nombre de votes: 48

migration d'une base d'un Mac OSX à un Linux/Ubuntu

Technique - installation | migration d'une base d'un Mac OSX à un Linux/Ubuntu

Par brunal2496 le 21/09/2007 - 19:31

Bonjour,

Je souhaite transférer une base installée sur un MAC OSX vers un serveur en Linux/ubuntu. Cette base est utilisée pour un wiki réaliser avec médiawiki.

J'ai essayé les opérations de dump/restore, mais hélas voilà le résultat de la commande suivante :
pg_restore -d wikiinterndb wiki.tar

[....]
pg_restore: [archiver (db)] Error from TOC entry 2104; 2620 17139 TRIGGER ts2_page_title wikiAdmin
pg_restore: [archiver (db)] could not execute query: ERROR: trigger "ts2_page_title" for relation "page" already exists
Command was: CREATE TRIGGER ts2_page_title
BEFORE INSERT OR UPDATE ON page
FOR EACH ROW
EXECUTE PROCEDURE ts2_page_title();
pg_restore: [archiver (db)] Error from TOC entry 2083; 2606 16794 FK CONSTRAINT archive_ar_user_fkey wikiAdmin
pg_restore: [archiver (db)] could not execute query: ERROR: "archive" is not a table
Command was: ALTER TABLE ONLY archive
ADD CONSTRAINT archive_ar_user_fkey FOREIGN KEY (ar_user) REFERENCES mwuser(user_id) ON DELETE ...
pg_restore: [archiver (db)] Error from TOC entry 2088; 2606 16850 FK CONSTRAINT categorylinks_cl_from_fkey wikiAdmin
pg_restore: [archiver (db)] could not execute query: ERROR: constraint "categorylinks_cl_from_fkey" for relation "categorylinks" already exists
Command was: ALTER TABLE ONLY categorylinks
ADD CONSTRAINT categorylinks_cl_from_fkey FOREIGN KEY (cl_from) REFERENCES page(page_id) ...
pg_restore: [archiver (db)] Error from TOC entry 2089; 2606 16862 FK CONSTRAINT externallinks_el_from_fkey wikiAdmin
pg_restore: [archiver (db)] could not execute query: ERROR: constraint "externallinks_el_from_fkey" for relation "externallinks" already exists
Command was: ALTER TABLE ONLY externallinks
ADD CONSTRAINT externallinks_el_from_fkey FOREIGN KEY (el_from) REFERENCES page(page_id) ...
pg_restore: [archiver (db)] Error from TOC entry 2096; 2606 16977 FK CONSTRAINT filearchive_fa_deleted_user_fkey wikiAdmin
pg_restore: [archiver (db)] could not execute query: ERROR: constraint "filearchive_fa_deleted_user_fkey" for relation "filearchive" already exists
[....]

voici un psql -l sur mon systeme Mac osx :
List of databases
Name | Owner | Encoding
--------------+-----------+-----------
postgres | postgres | SQL_ASCII
template0 | postgres | SQL_ASCII
template1 | postgres | SQL_ASCII
wikiinterndb | wikiAdmin | SQL_ASCII
(4 rows)

Celui sur mon Ubuntu :
List of databases
Name | Owner | Encoding
--------------+----------+----------
postgres | postgres | UTF8
template0 | postgres | UTF8
template1 | postgres | UTF8
wikiinterndb | postgres | UTF8
(4 rows)

Mes problèmes sont-ils dûs aux différences de propriétaires et d'encodage?
Est-ce normal que lorsque je lance mon médiawiki (qui à été installé avec exactement les mêmes renseignements que l'ancien), il ne "voit" pas le contenu de la base?

Je vous remercie par avance de votre aide.
Cordialement,
Bruno

Options d'affichage des commentaires

Sélectionnez la méthode d'affichage des commentaires que vous préférez, puis cliquez sur "Sauvegarder les paramètres" pour activer vos changements.

Re: migration d'une base d'un Mac OSX à un Linux/Ubuntu

Guillaume Lelarge/ = 22 Septembre, 2007 - 10:50

La différence d'encodage va poser problème au niveau des données, pas au niveau des objets. Or c'est là que se trouvent les problèmes que tu nous indiques. Il ne peut pas créer certains trigger. Avant de lancer le restore, es-tu sûr que ta base était vide de tout objet ?

--
Guillaume Lelarge.
Administrateur de bases de données
http://dalibo.com - http://dalibo.org


Merci de votre réponse. En e

brunal2496/ = 24 Septembre, 2007 - 10:09

Merci de votre réponse. En effet, lorsque j'ai posté le précédent message, j'avais déjà essayé de faire un restore sur la base.

Durant le weekend, j'ai refais les différentes manipulations. Il s'avère qu'en fait je n'ai pas de problème quant à la manipulation de dump/restore, puisque j'arrive à faire le restore sans erreur. Cependant je sui sobligé de donner des permissions aux tables de tsearch2, qui est nécessaire pour mediawiki, alors que cela n'était pas nécessairre sur Mac OSX. Enfin il persiste un prblème puisque mon installation de Médiawiki s'arrète car il trouve une base qui n'est pas vide. Je vais peut-être essayer en finissant l'installation puis en updatant ma base après, mais je crois que cela ne fonctionnait pas, médiawiki ne "voyant" pas ce qu'il ya dans la base. Si vous avez une idée sur la question, je suis tout ouïe ...


Bonjour, j'ai avancé un p

brunal2496/ = 24 Septembre, 2007 - 17:30

Bonjour,

j'ai avancé un peu et cette fois-ci, j'ai réussi à installer mediawiki proprement. cependant, bien que l'installation a parfaitement fonctionnée et que mediawiki a reconnu la présence de tables existantes, j'obtiens l'erreur suivante quand je tente d'accéder à la page d'accueil du wiki : Warning: pg_query() [function.pg-query]: Query failed: ERROR: relation "objectcache" does not exist in /home/racine/wikiinterne/VoxlerWiki/includes/DatabasePostgres.php on line 506

Warning: pg_query() [function.pg-query]: Query failed: ERROR: relation "objectcache" does not exist in /home/racine/wikiinterne/VoxlerWiki/includes/DatabasePostgres.php on line 506

Warning: pg_query() [function.pg-query]: Query failed: ERROR: relation "objectcache" does not exist in /home/racine/wikiinterne/VoxlerWiki/includes/DatabasePostgres.php on line 506

Warning: pg_query() [function.pg-query]: Query failed: ERROR: relation "objectcache" does not exist in /home/racine/wikiinterne/VoxlerWiki/includes/DatabasePostgres.php on line 506

Warning: pg_query() [function.pg-query]: Query failed: ERROR: relation "objectcache" does not exist in /home/racine/wikiinterne/VoxlerWiki/includes/DatabasePostgres.php on line 506

Warning: pg_query() [function.pg-query]: Query failed: ERROR: relation "objectcache" does not exist in /home/racine/wikiinterne/VoxlerWiki/includes/DatabasePostgres.php on line 506

Warning: pg_query() [function.pg-query]: Query failed: ERROR: relation "objectcache" does not exist in /home/racine/wikiinterne/VoxlerWiki/includes/DatabasePostgres.php on line 506

Warning: pg_query() [function.pg-query]: Query failed: ERROR: relation "page" does not exist in /home/racine/wikiinterne/VoxlerWiki/includes/DatabasePostgres.php on line 506
MediaWiki internal error.

Original exception: exception 'DBUnexpectedError' with message 'A database error has occurred
Query: SELECT value,exptime FROM objectcache WHERE keyname='wikiinterndb:messages-hash'
Function: MediaWikiBagOStuff::_doquery
Error: 1 ERROR: relation "objectcache" does not exist
' in /home/racine/wikiinterne/VoxlerWiki/includes/DatabasePostgres.php:913
Stack trace:
#0 /home/racine/wikiinterne/VoxlerWiki/includes/Database.php(779): DatabasePostgres->reportQueryError('ERROR: relatio...', 1, 'SELECT value,ex...', 'MediaWikiBagOSt...', false)
#1 /home/racine/wikiinterne/VoxlerWiki/includes/BagOStuff.php(405): Database->query('SELECT value,ex...', 'MediaWikiBagOSt...')
#2 /home/racine/wikiinterne/VoxlerWiki/includes/BagOStuff.php(300): MediaWikiBagOStuff->_doquery('SELECT value,ex...')
#3 /home/racine/wikiinterne/VoxlerWiki/includes/BagOStuff.php(234): SqlBagOStuff->_query('SELECT value,ex...', 'wikiinterndb:me...')
#4 /home/racine/wikiinterne/VoxlerWiki/includes/MessageCache.php(205): SqlBagOStuff->get('wikiinterndb:me...')
#5 /home/racine/wikiinterne/VoxlerWiki/includes/MessageCache.php(441): MessageCache->load()
#6 /home/racine/wikiinterne/VoxlerWiki/includes/GlobalFunctions.php(467): MessageCache->get('mainpage', true, true)
#7 /home/racine/wikiinterne/VoxlerWiki/includes/GlobalFunctions.php(421): wfMsgGetKey('mainpage', true, true, true)
#8 /home/racine/wikiinterne/VoxlerWiki/includes/GlobalFunctions.php(368): wfMsgReal('mainpage', Array, true, true)
#9 /home/racine/wikiinterne/VoxlerWiki/includes/Title.php(268): wfMsgForContent('mainpage')
#10 /home/racine/wikiinterne/VoxlerWiki/includes/Wiki.php(92): Title::newMainPage()
#11 /home/racine/wikiinterne/VoxlerWiki/index.php(58): MediaWiki->checkInitialQueries(NULL, 'view', Object(StubObject), Object(WebRequest), Object(StubContLang))
#12 {main}

Exception caught inside exception handler: exception 'DBUnexpectedError' with message 'SQL error: ERROR: relation "page" does not exist' in /home/racine/wikiinterne/VoxlerWiki/includes/DatabasePostgres.php:533
Stack trace:
#0 /home/racine/wikiinterne/VoxlerWiki/includes/MessageCache.php(314): DatabasePostgres->fetchObject(false)
#1 /home/racine/wikiinterne/VoxlerWiki/includes/MessageCache.php(251): MessageCache->loadFromDB()
#2 /home/racine/wikiinterne/VoxlerWiki/includes/MessageCache.php(441): MessageCache->load()
#3 /home/racine/wikiinterne/VoxlerWiki/includes/GlobalFunctions.php(467): MessageCache->get('internalerror', true, false)
#4 /home/racine/wikiinterne/VoxlerWiki/includes/GlobalFunctions.php(421): wfMsgGetKey('internalerror', true, false, true)
#5 /home/racine/wikiinterne/VoxlerWiki/includes/GlobalFunctions.php(326): wfMsgReal('internalerror', Array, true)
#6 /home/racine/wikiinterne/VoxlerWiki/includes/Exception.php(57): wfMsg('internalerror')
#7 /home/racine/wikiinterne/VoxlerWiki/includes/Exception.php(125): MWException->getPageTitle()
#8 /home/racine/wikiinterne/VoxlerWiki/includes/Exception.php(88): MWException->htmlHeader()
#9 /home/racine/wikiinterne/VoxlerWiki/includes/Exception.php(111): MWException->reportHTML()
#10 /home/racine/wikiinterne/VoxlerWiki/includes/Exception.php(191): MWException->report()
#11 /home/racine/wikiinterne/VoxlerWiki/includes/Exception.php(225): wfReportException(Object(DBUnexpectedError))
#12 [internal function]: wfExceptionHandler(Object(DBUnexpectedError))
#13 {main}

Est-ce que cel aurait un rapport avec l'encodage des données tel que vous me le pointiez dans votre post?

merci encore du temps passé à me répondre...


Non, rien à voir. C'est une

Guillaume Lelarge/ = 24 Septembre, 2007 - 19:26

Non, rien à voir. C'est une table manquante :
ERROR: relation "objectcache" does not exist

--
Guillaume Lelarge.
Administrateur de bases de données
http://dalibo.com - http://dalibo.org


© PostgreSQLFr, tous droits réservés.
Site déclaré à la CNIL sous le numéro 1074678, conformément à la Loi en vigueur.