Database kan gemme en enorm mængde information – alle indlæg, sider, kommentarer, menuer og enhver form for tekstdata. Jo mere udviklet websted du har, jo større er databasen. Sammen med det kan databasen blive 'overfyldt' med unødvendige elementer, såsom spamkommentarer, kladder, lukkede eller midlertidige filer osv.
Selvfølgelig kan det resultere i din hjemmesides dårlige hastighedsydelse og endda ressourceoverforbrug af din cPanel-konto – et antal MySQL-anmodninger til en 'tung' database kan sidde fast i en køen rammer indgangsprocesser og CPU-grænser. Der kræves således en ordentlig optimering for at involvere den effektivitet, hvormed data hentes fra databasen.
Denne vejledning viser dig flere måder at nå dette mål på.
1. Til at begynde med skal du finde den database, der er tildelt dit websted. Hvis du ikke kender navnet, er du velkommen til at tjekke det i dit websteds konfigurationsfil:
CMS | Sti til konfigurationsfilen | Linje |
---|---|---|
WordPress | installationsrodmappe, wp-config.php | define('DB_NAME', 'cpuser_database'); |
Joomla | installationsrodmappe, configuration.php | offentlig $db ='cpuser_database'; |
PrestaShop | installationsrodmappe>>/config/settings.inc.php | define('_DB_NAME_', cpuser_database'); |
OpenCart | installationsrodmappe, config.php | define('DB_DATABASE', 'cpuser_database'); |
Drupal | installationsrodmappe>>/sites/default/settings.php | 'database' => 'cpuser_database', |
Moodle | installationsrodmappe,config.php | $CFG->dbname,='cpuser_database'; |
Magento | installationsrodmappe>>/app/etc/local.xml | |
phpBB | installationsrodmappe, config.php | $dbname ='cpuser_database'; |
2. I vores tilfælde har vi et WordPress-baseret websted, vores databasenavn er nctests_wp255 :
3. Før du foretager ændringer, anbefaler vi kraftigt, at du downloader sikkerhedskopien af din database. For at gøre det skal du flytte til Filer sektion> Sikkerhedskopi menu:
4. Klik på den pågældende database i Download en MySQL Database Backup menu for at starte download:
5. Nu kan du fortsætte med selve optimeringen. Naviger til Databaser sektion> phpMyAdmin menu:
6. Klik på databasen i menuen til venstre for at udvide listen over tabellerne:
7. Markér den nødvendige tabel, og vælg Optimer tabel fra rullemenuen som vist nedenfor:
8. På samme måde kan du optimere flere tabeller på én gang, eller dem alle ved at bruge Check All mulighed:
9. Som et resultat vil du få følgende output:
10. En anden måde at få din database optimeret på er at fjerne de unødvendige data. Det kan gøres via SQL kommandolinje med følgende forespørgsel:
DELETE FROM $table hvor
hvor $table definerer navnet på den tabel, der skal justeres og
11. Lad os se nærmere på denne mulighed og overveje, hvordan den fungerer.
Antag, at du skal fjerne alle de indlæg, der indeholder et eller andet nøgleord, skal følgende kommando bruges:
SLET FRA 'tabel'
HVOR 'kolonne' som '%søgeord% '
BEMÆRK: du skal erstatte tabel og kolonne med de faktiske værdier af din database.
For at gøre det skal du gå til tabellen, der indeholder indlæg fra dit websted, og finde den tilsvarende kolonne. I vores tilfælde er det wp9x_posts og posts_title kolonne:
Nedenfor kan du se den sidste variant af vores kommando:
SLET FRA 'wp9x_posts'
HVOR 'post_title' som '%test%'
Når du trykker Go , alle de indlæg, der har 'test' ord i deres titel vil blive fjernet.
Outputtet vil se sådan ud:
12. Hvis du ønsker at fjerne indlæggene for den angivne periode, er du velkommen til at bruge denne:
SLET FRA 'tabel'
WHERE 'kolonne' mellem 'datofra' og 'datoto '
Igen, tabel og kolonne bør erstattes med de faktiske værdier samt dato fra og dateto .
BEMÆRK: du skal angive den præcise dato og klokkeslæt, som kan slås op i databasen.
Vores sidste kommando er:
SLET FRA 'wp9x_posts'
HVOR 'post_date' mellem '2015-06-24 19:48:14' og '2016-07-20 23:27:23'
13. Antag, at du skal fjerne kommentarerne fra en bestemt bruger. Her er kommandoen, der skal bruges:
DELETE FROM 'table'
WHERE 'column' ='brugernavn'
som i vores tilfælde er:
SLET FRA 'wp9x_comments'
HVOR 'comment_author' ='test_user'
eller hvis du skal fjerne indlæg med en bestemt status:
SLET FRA 'tabel'
HVOR 'kolonne' ='status'
som i vores tilfælde er:
SLET FRA 'wp9x_posts'
HVOR 'post_status' ='lukket'
Den samme tilstand fungerer for alle andre tabeller, kolonner og databaser, du skal blot indstille de tilsvarende værdier. Du kan også henvise til MySQL-dokumentationen for at lære mere om mulige manipulationer og MySQL-syntaks.
Det var det!
Har du brug for hjælp? Kontakt vores HelpDesk