SlideShare a Scribd company logo
1 of 46
Download to read offline
MySQL en phpMyAdmin
                 door Jisse Reitsma




april 2012        MySQL en phpMyAdmin voor “beginners”
Jisse Reitsma
●   Auteur “Joomla! templates ontwerpen”
●   Mede-oprichter en developer van Yireo
                 MageBridge, Vm2Mage, SimpleLists
                 Dynamic404, SSL Redirect, ...
●   Programmeur
                 Joomla!, Magento, PHP, Java, Android




    april 2012                 MySQL en phpMyAdmin voor “beginners”
Deze presentatie
●   Deel 1: Introductie tot MySQL
●   Deel 2: phpMyAdmin in de praktijk
●   Deel 3: Geavanceerde onderwerpen




    april 2012      MySQL en phpMyAdmin voor “beginners”
(daar gaan we)




april 2012     MySQL en phpMyAdmin voor “beginners”
Deel 1:
             Introductie tot MySQL



april 2012        MySQL en phpMyAdmin voor “beginners”
Introductie tot MySQL
●   Onderdeel van een stack
●   Client/server architectuur
●   Wat is SQL?




    april 2012        MySQL en phpMyAdmin voor “beginners”
Introductie tot MySQL
●   Onderdeel van een stack
●   Client/server architectuur
●   Wat is SQL?




    april 2012        MySQL en phpMyAdmin voor “beginners”
Introductie tot MySQL
●   Onderdeel van een stack
             –   LAMP (Linux, Apache, MySQL, PHP)
             –   MAMP (MacOS, Apache, MySQL, PHP)
             –   WAMP (Windows, Apache, MySQL, PHP)
             –   WIMP (Windows, IIS, MySQL, PHP)
●   Client/server architectuur
●   Wat is SQL?
    april 2012               MySQL en phpMyAdmin voor “beginners”
Introductie tot MySQL
●   Onderdeel van een stack
●   Client/server architectuur
●   Wat is SQL?




    april 2012        MySQL en phpMyAdmin voor “beginners”
Introductie tot MySQL
●   Onderdeel van een stack
●   Client/server architectuur
             –   MySQL server
             –   MySQL client
●   Wat is SQL?



    april 2012            MySQL en phpMyAdmin voor “beginners”
MySQL server
●   Op dezelfde server
                 localhost
●   Op een andere server bij dezelfde hoster
                 mysql12345.hoster.local
●   Op een andere server bij andere hoster
             –   TCP-poort 3306 open in firewall
             –   NIET DOEN


    april 2012                  MySQL en phpMyAdmin voor “beginners”
MySQL client
●   Joomla!      (PHP “mysql”)

●   phpMyAdmin (PHP “mysql”)
●   command-line client (SSH)
●   MySQL GUI client (SQLWave, HeidiSQL)




    april 2012            MySQL en phpMyAdmin voor “beginners”
Introductie tot MySQL
●   Onderdeel van een stack
●   Client/server architectuur
●   Wat is SQL?




    april 2012        MySQL en phpMyAdmin voor “beginners”
Introductie tot MySQL
●   Onderdeel van een stack
●   Client/server architectuur
●   Wat is SQL?
             –   Structured Query Language
             –   Aanspreken van relationele database



    april 2012             MySQL en phpMyAdmin voor “beginners”
april 2012   MySQL en phpMyAdmin voor “beginners”
Voorbeeld: Joomla! gebruikers
●   jos_users = Lijst van gebruikers
●   jos_usergroups = Lijst van groepen
●   jos_user_usergroup_map = Koppeling




    april 2012    MySQL en phpMyAdmin voor “beginners”
Voorbeeld: Joomla! artikelen
●   jos_content = Lijst van artikelen
●   jos_categories = Lijst van categorieen
●   jos_assets = Authorisatie




    april 2012     MySQL en phpMyAdmin voor “beginners”
SQL databases
●   MySQL                             ●   SQLite
●   Oracle                            ●   Sybase
●   Microsoft SQL                     ●   Microsoft Access
●   DB2                               ●   dBase
●   PostgreSQL                        ●   ...


    april 2012      MySQL en phpMyAdmin voor “beginners”
(duurde dat 10 minuten?)




april 2012          MySQL en phpMyAdmin voor “beginners”
Deel 2:
             phpMyAdmin in de praktijk



april 2012          MySQL en phpMyAdmin voor “beginners”
phpMyAdmin in de praktijk
●   Overzicht van phpMyAdmin
●   Wijzigen / toevoegen / verwijderen
●   SELECT-statement
●   Exporteren & importeren




    april 2012          MySQL en phpMyAdmin voor “beginners”
phpMyAdmin in de praktijk
●   Inloggen op phpMyAdmin
●   Wijzigen / toevoegen / verwijderen
●   SELECT-statement
●   Exporteren & importeren




    april 2012          MySQL en phpMyAdmin voor “beginners”
Inloggen op phpMyAdmin
●   Direct via een phpMyAdmin link
●   Via control panel van hosting omgeving
             –   CPanel, Plesk, DirectAdmin
             –   eigen control panel




    april 2012              MySQL en phpMyAdmin voor “beginners”
Inloggen op phpMyAdmin




april 2012         MySQL en phpMyAdmin voor “beginners”
april 2012   MySQL en phpMyAdmin voor “beginners”
april 2012   MySQL en phpMyAdmin voor “beginners”
april 2012   MySQL en phpMyAdmin voor “beginners”
april 2012   MySQL en phpMyAdmin voor “beginners”
april 2012   MySQL en phpMyAdmin voor “beginners”
phpMyAdmin in de praktijk
●   Inloggen op phpMyAdmin
●   Wijzigen / toevoegen / verwijderen
●   SELECT-statement
●   Exporteren & importeren




    april 2012          MySQL en phpMyAdmin voor “beginners”
Wijzigen / toevoegen / verwijderen
●   UPDATE = Wijzigen
●   INSERT = Toevoegen
●   DELETE = Verwijderen




    april 2012   MySQL en phpMyAdmin voor “beginners”
phpMyAdmin in de praktijk
●   Inloggen op phpMyAdmin
●   Wijzigen / toevoegen / verwijderen
●   SELECT-statement
●   Exporteren & importeren




    april 2012          MySQL en phpMyAdmin voor “beginners”
Voorbeelden van SELECTs
●   SELECT * FROM jos_users 
    WHERE id=42;
●   SELECT title,alias FROM jos_content 
    WHERE title = “contacts”;
●   SELECT title FROM jos_content 
    WHERE title LIKE “cont%”;


    april 2012     MySQL en phpMyAdmin voor “beginners”
Voorbeeld van JOIN SELECT
●   SELECT article.* 
    FROM jos_content AS article
    LEFT JOIN  jos_categories AS cat
    ON cat.id = a.catid
    WHERE cat.id = 3;




    april 2012   MySQL en phpMyAdmin voor “beginners”
phpMyAdmin in de praktijk
●   Inloggen op phpMyAdmin
●   Wijzigen / toevoegen / verwijderen
●   SELECT-statement
●   Exporteren & importeren




    april 2012          MySQL en phpMyAdmin voor “beginners”
Exporteren
●   Welke tabellen?
             –   Enkele tabel
             –   Meerdere tabellen
             –   Alle tabellen
●   Welke gegevens?
             –   Structuur en/of data




    april 2012                   MySQL en phpMyAdmin voor “beginners”
(rustig ademen)




april 2012     MySQL en phpMyAdmin voor “beginners”
Deel 3:
       Geavanceerde onderwerpen



april 2012    MySQL en phpMyAdmin voor “beginners”
Database table prefix
●   Gebruik niet “jos_”
●   Instelbaar tijdens Joomla! installatie
●   Maakt SQL-injection moeilijker




    april 2012        MySQL en phpMyAdmin voor “beginners”
User ID 42
●   Standaard “admin” user heeft ID 42
●   Maakt SQL-injection makkelijker
●   Wijzigen
             –   Maak nieuwe Super User aan
             –   Verwijder oude Super User
●   Vraag: Waarom niet via phpMyAdmin wijzigen?

    april 2012             MySQL en phpMyAdmin voor “beginners”
Tabellen leegmaken
●   TRUNCATE `jos_content`;
●   Wees voorzichtig
             –   Dit kan niet teruggedraaid worden
             –   Relaties worden niet in acht genomen




    april 2012             MySQL en phpMyAdmin voor “beginners”
JOINs
●   LEFT JOIN
●   RIGHT JOIN
●   INNER JOIN
●   OUTER JOIN




    april 2012   MySQL en phpMyAdmin voor “beginners”
UTF-8 en collations
●   UTF-8 = De-facto karakterset voor Joomla!
             –   Support voor veel talen (Westers, Arabisch, Hindu, Klingon)
●   Collations = Interpretatie van karakterset
             –   utf8_general_ci (standaard)
             –   utf8_polish_ci
             –   latin1 (nooit gebruiken)


    april 2012                  MySQL en phpMyAdmin voor “beginners”
MyISAM en InnoDB
●   MyISAM Storage Engine
●   InnoDB Storage Engine




    april 2012      MySQL en phpMyAdmin voor “beginners”
In het kort
●   Deel 1: Introductie tot MySQL
                 Stack; Client/server; SQL;

●   Deel 2: phpMyAdmin in de praktijk
                 INSERT, SELECT, UPDATE, DELETE;
                 Aanmaken van database, database-user; Import / export;

●   Deel 3: Geavanceerde onderwerpen
                 JOINs; UTF-8, collations; user-ID 42; MyISAM, InnoDB
                 TRUNCATE; database table prefix



    april 2012                      MySQL en phpMyAdmin voor “beginners”
(vragen)




april 2012   MySQL en phpMyAdmin voor “beginners”

More Related Content

More from Yireo

Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2Yireo
 
Magento 2 Seminar - Andra Lungu - API in Magento 2
Magento 2 Seminar - Andra Lungu - API in Magento 2Magento 2 Seminar - Andra Lungu - API in Magento 2
Magento 2 Seminar - Andra Lungu - API in Magento 2Yireo
 
Magento 2 Seminar - Roger Keulen - Machine learning
Magento 2 Seminar - Roger Keulen - Machine learningMagento 2 Seminar - Roger Keulen - Machine learning
Magento 2 Seminar - Roger Keulen - Machine learningYireo
 
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and Varnish
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and VarnishMagento 2 Seminar - Miguel Balparda - M2 with PHP 7 and Varnish
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and VarnishYireo
 
Magento 2 Seminar - Maarten Schuiling - The App Economy
Magento 2 Seminar - Maarten Schuiling - The App EconomyMagento 2 Seminar - Maarten Schuiling - The App Economy
Magento 2 Seminar - Maarten Schuiling - The App EconomyYireo
 
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelen
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelenMagento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelen
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelenYireo
 
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2Yireo
 
Magento 2 Seminar - Arjen Miedema - Search Engine Optimisation
Magento 2 Seminar - Arjen Miedema - Search Engine OptimisationMagento 2 Seminar - Arjen Miedema - Search Engine Optimisation
Magento 2 Seminar - Arjen Miedema - Search Engine OptimisationYireo
 
Magento 2 Seminar - Tjitte Folkertsma - Beaumotica
Magento 2 Seminar - Tjitte Folkertsma - BeaumoticaMagento 2 Seminar - Tjitte Folkertsma - Beaumotica
Magento 2 Seminar - Tjitte Folkertsma - BeaumoticaYireo
 
Magento 2 Seminar - Jeroen Vermeulen Snelle Magento 2 Shops
Magento 2 Seminar - Jeroen Vermeulen  Snelle Magento 2 ShopsMagento 2 Seminar - Jeroen Vermeulen  Snelle Magento 2 Shops
Magento 2 Seminar - Jeroen Vermeulen Snelle Magento 2 ShopsYireo
 
Magento 2 Seminar - Christian Muench - Magerun2
Magento 2 Seminar - Christian Muench - Magerun2Magento 2 Seminar - Christian Muench - Magerun2
Magento 2 Seminar - Christian Muench - Magerun2Yireo
 
Magento 2 Seminar - Anton Kril - Magento 2 Summary
Magento 2 Seminar - Anton Kril - Magento 2 SummaryMagento 2 Seminar - Anton Kril - Magento 2 Summary
Magento 2 Seminar - Anton Kril - Magento 2 SummaryYireo
 
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarks
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarksMagento 2 Seminar - Daniel Genis - Magento 2 benchmarks
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarksYireo
 
Magento 2 Seminar - Ben Marks - Keynote
Magento 2 Seminar - Ben Marks - KeynoteMagento 2 Seminar - Ben Marks - Keynote
Magento 2 Seminar - Ben Marks - KeynoteYireo
 
Magento 2 Seminar - Community agenda
Magento 2 Seminar - Community agendaMagento 2 Seminar - Community agenda
Magento 2 Seminar - Community agendaYireo
 
Magento 2 Seminar - Jisse Reitsma - Migratie Planning
Magento 2 Seminar - Jisse Reitsma - Migratie PlanningMagento 2 Seminar - Jisse Reitsma - Migratie Planning
Magento 2 Seminar - Jisse Reitsma - Migratie PlanningYireo
 
Magento 2 Seminar - Welkom
Magento 2 Seminar - WelkomMagento 2 Seminar - Welkom
Magento 2 Seminar - WelkomYireo
 
Dutch Joomla PHP Developers group - HikaShop Plugin Events
Dutch Joomla PHP Developers group - HikaShop Plugin EventsDutch Joomla PHP Developers group - HikaShop Plugin Events
Dutch Joomla PHP Developers group - HikaShop Plugin EventsYireo
 
Extend Joomla Forms Using Plugins
Extend Joomla Forms Using PluginsExtend Joomla Forms Using Plugins
Extend Joomla Forms Using PluginsYireo
 
Joomla Multilinguality
Joomla MultilingualityJoomla Multilinguality
Joomla MultilingualityYireo
 

More from Yireo (20)

Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2
 
Magento 2 Seminar - Andra Lungu - API in Magento 2
Magento 2 Seminar - Andra Lungu - API in Magento 2Magento 2 Seminar - Andra Lungu - API in Magento 2
Magento 2 Seminar - Andra Lungu - API in Magento 2
 
Magento 2 Seminar - Roger Keulen - Machine learning
Magento 2 Seminar - Roger Keulen - Machine learningMagento 2 Seminar - Roger Keulen - Machine learning
Magento 2 Seminar - Roger Keulen - Machine learning
 
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and Varnish
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and VarnishMagento 2 Seminar - Miguel Balparda - M2 with PHP 7 and Varnish
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and Varnish
 
Magento 2 Seminar - Maarten Schuiling - The App Economy
Magento 2 Seminar - Maarten Schuiling - The App EconomyMagento 2 Seminar - Maarten Schuiling - The App Economy
Magento 2 Seminar - Maarten Schuiling - The App Economy
 
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelen
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelenMagento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelen
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelen
 
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2
 
Magento 2 Seminar - Arjen Miedema - Search Engine Optimisation
Magento 2 Seminar - Arjen Miedema - Search Engine OptimisationMagento 2 Seminar - Arjen Miedema - Search Engine Optimisation
Magento 2 Seminar - Arjen Miedema - Search Engine Optimisation
 
Magento 2 Seminar - Tjitte Folkertsma - Beaumotica
Magento 2 Seminar - Tjitte Folkertsma - BeaumoticaMagento 2 Seminar - Tjitte Folkertsma - Beaumotica
Magento 2 Seminar - Tjitte Folkertsma - Beaumotica
 
Magento 2 Seminar - Jeroen Vermeulen Snelle Magento 2 Shops
Magento 2 Seminar - Jeroen Vermeulen  Snelle Magento 2 ShopsMagento 2 Seminar - Jeroen Vermeulen  Snelle Magento 2 Shops
Magento 2 Seminar - Jeroen Vermeulen Snelle Magento 2 Shops
 
Magento 2 Seminar - Christian Muench - Magerun2
Magento 2 Seminar - Christian Muench - Magerun2Magento 2 Seminar - Christian Muench - Magerun2
Magento 2 Seminar - Christian Muench - Magerun2
 
Magento 2 Seminar - Anton Kril - Magento 2 Summary
Magento 2 Seminar - Anton Kril - Magento 2 SummaryMagento 2 Seminar - Anton Kril - Magento 2 Summary
Magento 2 Seminar - Anton Kril - Magento 2 Summary
 
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarks
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarksMagento 2 Seminar - Daniel Genis - Magento 2 benchmarks
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarks
 
Magento 2 Seminar - Ben Marks - Keynote
Magento 2 Seminar - Ben Marks - KeynoteMagento 2 Seminar - Ben Marks - Keynote
Magento 2 Seminar - Ben Marks - Keynote
 
Magento 2 Seminar - Community agenda
Magento 2 Seminar - Community agendaMagento 2 Seminar - Community agenda
Magento 2 Seminar - Community agenda
 
Magento 2 Seminar - Jisse Reitsma - Migratie Planning
Magento 2 Seminar - Jisse Reitsma - Migratie PlanningMagento 2 Seminar - Jisse Reitsma - Migratie Planning
Magento 2 Seminar - Jisse Reitsma - Migratie Planning
 
Magento 2 Seminar - Welkom
Magento 2 Seminar - WelkomMagento 2 Seminar - Welkom
Magento 2 Seminar - Welkom
 
Dutch Joomla PHP Developers group - HikaShop Plugin Events
Dutch Joomla PHP Developers group - HikaShop Plugin EventsDutch Joomla PHP Developers group - HikaShop Plugin Events
Dutch Joomla PHP Developers group - HikaShop Plugin Events
 
Extend Joomla Forms Using Plugins
Extend Joomla Forms Using PluginsExtend Joomla Forms Using Plugins
Extend Joomla Forms Using Plugins
 
Joomla Multilinguality
Joomla MultilingualityJoomla Multilinguality
Joomla Multilinguality
 

PhpMyAdmin and MySQL for beginners

  • 1. MySQL en phpMyAdmin door Jisse Reitsma april 2012 MySQL en phpMyAdmin voor “beginners”
  • 2. Jisse Reitsma ● Auteur “Joomla! templates ontwerpen” ● Mede-oprichter en developer van Yireo MageBridge, Vm2Mage, SimpleLists Dynamic404, SSL Redirect, ... ● Programmeur Joomla!, Magento, PHP, Java, Android april 2012 MySQL en phpMyAdmin voor “beginners”
  • 3. Deze presentatie ● Deel 1: Introductie tot MySQL ● Deel 2: phpMyAdmin in de praktijk ● Deel 3: Geavanceerde onderwerpen april 2012 MySQL en phpMyAdmin voor “beginners”
  • 4. (daar gaan we) april 2012 MySQL en phpMyAdmin voor “beginners”
  • 5. Deel 1: Introductie tot MySQL april 2012 MySQL en phpMyAdmin voor “beginners”
  • 6. Introductie tot MySQL ● Onderdeel van een stack ● Client/server architectuur ● Wat is SQL? april 2012 MySQL en phpMyAdmin voor “beginners”
  • 7. Introductie tot MySQL ● Onderdeel van een stack ● Client/server architectuur ● Wat is SQL? april 2012 MySQL en phpMyAdmin voor “beginners”
  • 8. Introductie tot MySQL ● Onderdeel van een stack – LAMP (Linux, Apache, MySQL, PHP) – MAMP (MacOS, Apache, MySQL, PHP) – WAMP (Windows, Apache, MySQL, PHP) – WIMP (Windows, IIS, MySQL, PHP) ● Client/server architectuur ● Wat is SQL? april 2012 MySQL en phpMyAdmin voor “beginners”
  • 9. Introductie tot MySQL ● Onderdeel van een stack ● Client/server architectuur ● Wat is SQL? april 2012 MySQL en phpMyAdmin voor “beginners”
  • 10. Introductie tot MySQL ● Onderdeel van een stack ● Client/server architectuur – MySQL server – MySQL client ● Wat is SQL? april 2012 MySQL en phpMyAdmin voor “beginners”
  • 11. MySQL server ● Op dezelfde server localhost ● Op een andere server bij dezelfde hoster mysql12345.hoster.local ● Op een andere server bij andere hoster – TCP-poort 3306 open in firewall – NIET DOEN april 2012 MySQL en phpMyAdmin voor “beginners”
  • 12. MySQL client ● Joomla! (PHP “mysql”) ● phpMyAdmin (PHP “mysql”) ● command-line client (SSH) ● MySQL GUI client (SQLWave, HeidiSQL) april 2012 MySQL en phpMyAdmin voor “beginners”
  • 13. Introductie tot MySQL ● Onderdeel van een stack ● Client/server architectuur ● Wat is SQL? april 2012 MySQL en phpMyAdmin voor “beginners”
  • 14. Introductie tot MySQL ● Onderdeel van een stack ● Client/server architectuur ● Wat is SQL? – Structured Query Language – Aanspreken van relationele database april 2012 MySQL en phpMyAdmin voor “beginners”
  • 15. april 2012 MySQL en phpMyAdmin voor “beginners”
  • 16. Voorbeeld: Joomla! gebruikers ● jos_users = Lijst van gebruikers ● jos_usergroups = Lijst van groepen ● jos_user_usergroup_map = Koppeling april 2012 MySQL en phpMyAdmin voor “beginners”
  • 17. Voorbeeld: Joomla! artikelen ● jos_content = Lijst van artikelen ● jos_categories = Lijst van categorieen ● jos_assets = Authorisatie april 2012 MySQL en phpMyAdmin voor “beginners”
  • 18. SQL databases ● MySQL ● SQLite ● Oracle ● Sybase ● Microsoft SQL ● Microsoft Access ● DB2 ● dBase ● PostgreSQL ● ... april 2012 MySQL en phpMyAdmin voor “beginners”
  • 19. (duurde dat 10 minuten?) april 2012 MySQL en phpMyAdmin voor “beginners”
  • 20. Deel 2: phpMyAdmin in de praktijk april 2012 MySQL en phpMyAdmin voor “beginners”
  • 21. phpMyAdmin in de praktijk ● Overzicht van phpMyAdmin ● Wijzigen / toevoegen / verwijderen ● SELECT-statement ● Exporteren & importeren april 2012 MySQL en phpMyAdmin voor “beginners”
  • 22. phpMyAdmin in de praktijk ● Inloggen op phpMyAdmin ● Wijzigen / toevoegen / verwijderen ● SELECT-statement ● Exporteren & importeren april 2012 MySQL en phpMyAdmin voor “beginners”
  • 23. Inloggen op phpMyAdmin ● Direct via een phpMyAdmin link ● Via control panel van hosting omgeving – CPanel, Plesk, DirectAdmin – eigen control panel april 2012 MySQL en phpMyAdmin voor “beginners”
  • 24. Inloggen op phpMyAdmin april 2012 MySQL en phpMyAdmin voor “beginners”
  • 25. april 2012 MySQL en phpMyAdmin voor “beginners”
  • 26. april 2012 MySQL en phpMyAdmin voor “beginners”
  • 27. april 2012 MySQL en phpMyAdmin voor “beginners”
  • 28. april 2012 MySQL en phpMyAdmin voor “beginners”
  • 29. april 2012 MySQL en phpMyAdmin voor “beginners”
  • 30. phpMyAdmin in de praktijk ● Inloggen op phpMyAdmin ● Wijzigen / toevoegen / verwijderen ● SELECT-statement ● Exporteren & importeren april 2012 MySQL en phpMyAdmin voor “beginners”
  • 31. Wijzigen / toevoegen / verwijderen ● UPDATE = Wijzigen ● INSERT = Toevoegen ● DELETE = Verwijderen april 2012 MySQL en phpMyAdmin voor “beginners”
  • 32. phpMyAdmin in de praktijk ● Inloggen op phpMyAdmin ● Wijzigen / toevoegen / verwijderen ● SELECT-statement ● Exporteren & importeren april 2012 MySQL en phpMyAdmin voor “beginners”
  • 33. Voorbeelden van SELECTs ● SELECT * FROM jos_users  WHERE id=42; ● SELECT title,alias FROM jos_content  WHERE title = “contacts”; ● SELECT title FROM jos_content  WHERE title LIKE “cont%”; april 2012 MySQL en phpMyAdmin voor “beginners”
  • 34. Voorbeeld van JOIN SELECT ● SELECT article.*  FROM jos_content AS article LEFT JOIN  jos_categories AS cat ON cat.id = a.catid WHERE cat.id = 3; april 2012 MySQL en phpMyAdmin voor “beginners”
  • 35. phpMyAdmin in de praktijk ● Inloggen op phpMyAdmin ● Wijzigen / toevoegen / verwijderen ● SELECT-statement ● Exporteren & importeren april 2012 MySQL en phpMyAdmin voor “beginners”
  • 36. Exporteren ● Welke tabellen? – Enkele tabel – Meerdere tabellen – Alle tabellen ● Welke gegevens? – Structuur en/of data april 2012 MySQL en phpMyAdmin voor “beginners”
  • 37. (rustig ademen) april 2012 MySQL en phpMyAdmin voor “beginners”
  • 38. Deel 3: Geavanceerde onderwerpen april 2012 MySQL en phpMyAdmin voor “beginners”
  • 39. Database table prefix ● Gebruik niet “jos_” ● Instelbaar tijdens Joomla! installatie ● Maakt SQL-injection moeilijker april 2012 MySQL en phpMyAdmin voor “beginners”
  • 40. User ID 42 ● Standaard “admin” user heeft ID 42 ● Maakt SQL-injection makkelijker ● Wijzigen – Maak nieuwe Super User aan – Verwijder oude Super User ● Vraag: Waarom niet via phpMyAdmin wijzigen? april 2012 MySQL en phpMyAdmin voor “beginners”
  • 41. Tabellen leegmaken ● TRUNCATE `jos_content`; ● Wees voorzichtig – Dit kan niet teruggedraaid worden – Relaties worden niet in acht genomen april 2012 MySQL en phpMyAdmin voor “beginners”
  • 42. JOINs ● LEFT JOIN ● RIGHT JOIN ● INNER JOIN ● OUTER JOIN april 2012 MySQL en phpMyAdmin voor “beginners”
  • 43. UTF-8 en collations ● UTF-8 = De-facto karakterset voor Joomla! – Support voor veel talen (Westers, Arabisch, Hindu, Klingon) ● Collations = Interpretatie van karakterset – utf8_general_ci (standaard) – utf8_polish_ci – latin1 (nooit gebruiken) april 2012 MySQL en phpMyAdmin voor “beginners”
  • 44. MyISAM en InnoDB ● MyISAM Storage Engine ● InnoDB Storage Engine april 2012 MySQL en phpMyAdmin voor “beginners”
  • 45. In het kort ● Deel 1: Introductie tot MySQL Stack; Client/server; SQL; ● Deel 2: phpMyAdmin in de praktijk INSERT, SELECT, UPDATE, DELETE; Aanmaken van database, database-user; Import / export; ● Deel 3: Geavanceerde onderwerpen JOINs; UTF-8, collations; user-ID 42; MyISAM, InnoDB TRUNCATE; database table prefix april 2012 MySQL en phpMyAdmin voor “beginners”
  • 46. (vragen) april 2012 MySQL en phpMyAdmin voor “beginners”