sql >> Database teknologi >  >> RDS >> Mysql

indlæser enwiki-latest-categorylinks.sql til mysql

1) Adskil SQL-dumpfilen i to dele:oprettelse og data

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

Dette vil returnere linjenummeret, der adskiller oprettelsen og dataene for tabeldelene af filen. Lad det være 46.

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

Tallet vi får i den sidste kommando bruges som input til tail for at hente datadelen af ​​filen.

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

Tallet vi får i den første kommando bruges som input til head for at få tabeloprettelsesdelen af ​​filen.

2) Fjern indekser fra redirect-creation.sql

Følgende er den originale CREATE TABLE erklæring i dumpen:

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; 

Følgende er den ønskede version efter fjernelse af indekserne:

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; 

Rediger page-creation.sql for at fjerne indekser som vist ovenfor.

3) Indlæs de oprettede filer

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

4) Opret indekser på felter, du ønsker efter indlæsning af dataene

create index idx_redirect_rd_from on redirect(rd_from)

Jeg er i stand til at indlæse kategorilinktabellen på under en time på min Macbook Pro ved at følge trinene ovenfor.




  1. MYSQL fejl:1045 (28000):Adgang nægtet for brugeren 'root'@'localhost'

  2. Få AVG til at ignorere nul- eller nulværdier

  3. Min BOB-erklæring virker ikke

  4. Lokale og globale midlertidige tabeller i SQL Server