Mysql
 sql >> Base de données >  >> RDS >> Mysql

chargement enwiki-latest-categorylinks.sql dans mysql

1) Séparez le fichier de vidage SQL en deux parties :création et données

  1. grep -n "Dumping data" enwiki-latest-redirect.sql

Cela renverra le numéro de ligne séparant la création et les données des parties de table du fichier. Que ce soit 46.

  1. tail -n +46 enwiki-latest-redirect.sql > redirect -data.sql

Le nombre que nous obtenons dans la dernière commande est utilisé comme entrée pour tail pour obtenir la partie données du fichier.

  1. head -46 enwiki-latest-redirect.sql > redirect-creation.sql

Le nombre que nous obtenons dans la première commande est utilisé comme entrée pour head pour obtenir la partie création de table du fichier.

2) Supprimer les index de redirect-creation.sql

Ce qui suit est le CREATE TABLE d'origine déclaration dans le vidage :

CREATE TABLE `redirect` ( 
 `rd_from` int(8) unsigned NOT NULL DEFAULT '0', 
 `rd_namespace` int(11) NOT NULL DEFAULT '0', 
 `rd_title` varbinary(255) NOT NULL DEFAULT '', 
 `rd_interwiki` varbinary(32) DEFAULT NULL, 
 `rd_fragment` varbinary(255) DEFAULT NULL,   
  PRIMARY KEY (`rd_from`),   
  KEY `rd_ns_title` (`rd_namespace`,`rd_title`,`rd_from`)
) ENGINE=InnoDB DEFAULT CHARSET=binary; 

Voici la version souhaitée après suppression des index :

CREATE TABLE `redirect` ( 
 `rd_from` int(8) unsigned NOT NULL DEFAULT '0', 
 `rd_namespace` int(11) NOT NULL DEFAULT '0', 
 `rd_title` varbinary(255) NOT NULL DEFAULT '', 
 `rd_interwiki` varbinary(32) DEFAULT NULL, 
 `rd_fragment` varbinary(255) DEFAULT NULL, 
) ENGINE=InnoDB DEFAULT CHARSET=binary; 

Modifiez le page-creation.sql pour supprimer les index comme indiqué ci-dessus.

3) Charger les fichiers créés

mysql -u root -p wikipedia < redirect-creation.sql
mysql -u root -p wikipedia < redirect-data.sql

4) Créez des index sur les champs de votre choix après avoir chargé les données

create index idx_redirect_rd_from on redirect(rd_from)

Je suis capable de charger le tableau des liens de catégorie en moins d'une heure sur mon Macbook Pro en suivant les étapes ci-dessus.