1) Pisahkan file dump SQL menjadi dua bagian:pembuatan dan data
grep -n "Dumping data" enwiki-latest-redirect.sql
Ini akan mengembalikan nomor baris yang memisahkan pembuatan dan data bagian tabel file. Biarlah 46.
tail -n +46 enwiki-latest-redirect.sql > redirect -data.sql
Angka yang kita dapatkan pada perintah terakhir digunakan sebagai input ke tail
untuk mendapatkan bagian data dari file.
head -46 enwiki-latest-redirect.sql > redirect-creation.sql
Angka yang kita dapatkan pada perintah pertama digunakan sebagai input ke head
untuk mendapatkan bagian pembuatan tabel dari file.
2) Hapus indeks dari redirect-creation.sql
Berikut ini adalah CREATE TABLE
asli pernyataan di dump:
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;
Berikut ini adalah versi yang diinginkan setelah menghapus indeks:
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;
Edit page-creation.sql untuk menghapus indeks seperti yang ditunjukkan di atas.
3) Muat file yang dibuat
mysql -u root -p wikipedia < redirect-creation.sql
mysql -u root -p wikipedia < redirect-data.sql
4) Buat indeks pada bidang yang Anda inginkan setelah memuat data
create index idx_redirect_rd_from on redirect(rd_from)
Saya dapat memuat tabel kategorilinks dalam waktu kurang dari satu jam di Macbook Pro saya dengan mengikuti langkah-langkah di atas.