Replace String MySQL – Studi Kasus WordPress Move (Pindah, Pindahan)

Cara Mysql Replace String

Terkadang kita perlu untuk mengganti sebuah text / string tertentu dalam database MySQL, karena satu dan lain hal. Bagaimana caranya?

Mudah, jalankan saja query berikut ini :

UPDATE [table_name] SET [field_name] = REPLACE ([field_name], ‘[string_to_find]’, ‘[string_to_replace]’);

Query di atas akan membantu untuk mengupdate table.column (table.field) dan mengganti string_to_find dengan string_to_replace.

Contohnya :

Studi kasus, misalnya kita ingin untuk merubah nama website wordpress kita dari example.net menjadi example.com, maka kita perlu untuk merubah setiap link di dalam artikel yang asalnya menuju example.net menjadi example.com.

Jika kita lakukan manual satu per satu tentunya akan sangat membosankan, rawan salah, dan juga akan sangat lama. Tapi akan sangat mudah dan cepat dengan melakukan edit via MySQL, misalnya seperti begini :

UPDATE wp_options SET option_value = replace(option_value, ‘http://www.oldurl’, ‘http://www.newurl’) WHERE option_name = ‘home’ OR option_name = ‘siteurl’;

UPDATE wp_options SET option_value = replace(option_value, ‘http://www.oldurl’, ‘http://www.newurl’) WHERE option_name = ‘widget_text’ ;

UPDATE wp_posts SET post_content = REPLACE(post_content, ‘http://www.oldurl’, ‘http://www.newurl’);

UPDATE wp_posts SET guid = replace(guid, ‘http://www.oldurl’,’http://www.newurl’);

UPDATE wp_postmeta SET meta_value = replace(meta_value,’http://www.oldurl’,’http://www.newurl’);

Jangan lupa update semua path ke folder baru di database

Dari /path/to/wordpress-lama/

Ke /path/to/wordpress-lama/

Anda pakai plugin wordpress ewwwimage optimizer dan hosting berbasis cpanel?

UPDATE wp_ewwwio_images SET path = REPLACE(path, ‘/home/oldaccountname/’, ‘/home/newaccountname/’);

Query di atas akan mengganti semua baris dalam table post_content, merubah setiap text bertuliskan example.net menjadi example.com.

Contoh code dapat Anda copy juga di http://pastebin.com/Rdtmvj3N

Mudah bukan? Selamat mencoba.

UPDATE : gunakan tools “InterconnectIt” supaya lebih mudah, tinggal upload ke hosting Anda dan jalankan. Tool ini cocok untuk wordpress karena turut serta memberikan support untuk serialized database. Untuk versi lama yang terbukti berjalan baik di website-website kami, bisa download di sini.

Cara penggunaan Command Line Interface ada di https://github.com/interconnectit/Search-Replace-DB