From cecb985bee3bdd252e1b8dc0bd500b37cd52be01 Mon Sep 17 00:00:00 2001 From: Pierre Schmitz Date: Wed, 16 May 2007 20:58:53 +0000 Subject: Aktualisierung auf MediaWiki 1.10.0 Plugins angepasst und verbessert kleine Korrekturen am Design --- maintenance/renamewiki.php | 60 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 maintenance/renamewiki.php (limited to 'maintenance/renamewiki.php') diff --git a/maintenance/renamewiki.php b/maintenance/renamewiki.php new file mode 100644 index 00000000..ebfbaea9 --- /dev/null +++ b/maintenance/renamewiki.php @@ -0,0 +1,60 @@ + \n" ); +} + +list( $from, $to ) = $args; + +echo "Renaming blob tables in ES from $from to $to...\n"; +echo "Sleeping 5 seconds..."; +sleep(5); +echo "\n"; + +$maintenance = "$IP/maintenance"; + +# Initialise external storage +if ( is_array( $wgDefaultExternalStore ) ) { + $stores = $wgDefaultExternalStore; +} elseif ( $wgDefaultExternalStore ) { + $stores = array( $wgDefaultExternalStore ); +} else { + $stores = array(); +} +if ( count( $stores ) ) { + require_once( 'ExternalStoreDB.php' ); + print "Initialising external storage $store...\n"; + global $wgDBuser, $wgDBpassword, $wgExternalServers; + foreach ( $stores as $storeURL ) { + $m = array(); + if ( !preg_match( '!^DB://(.*)$!', $storeURL, $m ) ) { + continue; + } + + $cluster = $m[1]; + + # Hack + $wgExternalServers[$cluster][0]['user'] = $wgDBuser; + $wgExternalServers[$cluster][0]['password'] = $wgDBpassword; + + $store = new ExternalStoreDB; + $extdb =& $store->getMaster( $cluster ); + $extdb->query( "SET table_type=InnoDB" ); + $extdb->query( "CREATE DATABASE {$to}" ); + $extdb->query( "ALTER TABLE {$from}.blobs RENAME TO {$to}.blobs" ); + $extdb->selectDB( $from ); + dbsource( "$maintenance/storage/blobs.sql", $extdb ); + $extdb->immediateCommit(); + } +} + +echo "done.\n"; + +?> \ No newline at end of file -- cgit v1.2.2