Select Page

MySQL Search and Replace

Niekedy je potrebné vyhľadať všetky inštancie jedného vlákna za iné. Toto znie dosť abstraktne, tak si dajme príklad. Máš vytvorenú WordPress webstránku, avšak žije na tvojom počítači (localhost) alebo na nejakej dočasnej vývojovej doméne. Prípadne meníš doménu. Skrátka nastal čas, aby stránka zmenila doménu z StaraDomena.sk na UplneNovaDomena.sk.

Avšak v databáze článkov máš uložených množstvo odkazov, ktoré ešte stále začínajú na https://StaraDomena.sk. A nechceš ich meniť jeden po druhom, lebo to ide aj rýchlejšie.

V tomto článku si ukážeme, ako na to v phpMyAdmin.

  1. Prihlás sa do phpMyAdmin (ak máš web online, prihlasovacie údaje by si mal mať u svojho poskytovateľa hostingu).
  2. Nájdi databázu k svojej WordPress webstránke.
  3. Nájdi tabuľku, ktorá obsahuje články. Spravidla má nejaký prefix + podčiarovník + „posts“. Napríklad „wp_posts“. Otvor túto tabuľku
  4. V tabuľke nájdi stĺpec, v ktorom sa nachádzajú linky a zapíš si, ako sa volá. Pomerne často to bude „guid“.
  5. V hornom menu choď do „SQL“ a zadaj nasledovný príkaz, kde:
    1. „wp_posts“ zameníš za názov tvojej tabuľky,
    2. „https://StaraDomena.sk“ za tvoju pôvodnú doménu
    3. „https://UplneNovaDomena.sk“ za tvoju novú doménu
    4. „guid“ zameníš za názov stĺpca v tvojej tabuľke (ak je odlišný):
    UPDATE `wp_posts` SET guid = REPLACE(guid, 'https://staradomena.sk/', 'https://uplnenovadomena.sk/') WHERE `guid` LIKE 'https://staradomena.sk/%';
  6. Stlač tlačidlo „GO“. Mala  by sa objaviť správa, koľko položiek bolo zmenených. Keď si teraz opäť pozrieš ten stĺpec, všetky URL by mali byť zmenené.
  7. Je možné, že aj v iných stĺpcoch sa nachádzajú staré URL. Tak to skontroluj.

 

Zdroje a ďalšie možnosti: