Als je wilt testen of PHP in staat is om verbinding te maken met MySQL en databasequery's uit te voeren, kun je een testtabel maken met dummy-gegevens en een query naar de inhoud ervan vanuit een PHP-script. Voordat we dat kunnen doen, moeten we een testdatabase maken en een nieuwe MySQL-gebruiker die correct is geconfigureerd om er toegang toe te krijgen.
We maken een database met de naam test_database en een gebruiker met de naam test_user , maar je kunt deze namen vervangen door een andere naam.
Maak eerst verbinding met de MySQL-console met behulp van het root account:
sudo mysql
Om een nieuwe database te maken, voer je de volgende opdracht uit vanaf je MySQL-console:
CREATE DATABASE test_database;
Nu kun je een nieuwe gebruiker aanmaken en hem volledige rechten verlenen op de aangepaste database die je zojuist hebt gemaakt.
Met de volgende opdracht maakt u een nieuwe gebruiker met de naam test_user, met mysql_native_passwordals standaardverificatiemethode. We definiëren het wachtwoord van deze gebruiker als password, maar je moet deze waarde vervangen door een veilig wachtwoord naar keuze.
CREATE USER 'test_user'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
Nu moeten we deze gebruiker toestemming geven voor de test_databasedatabase:
GRANT ALL ON test_database.* TO 'test_user'@'%';
Dit geeft de gebruiker test_user volledige rechten over de database test_database, terwijl wordt voorkomen dat deze gebruiker andere databases op je server maakt of wijzigt.
Verlaat nu de MySQL-shell met:
exit
Je kunt testen of de nieuwe gebruiker de juiste rechten heeft door opnieuw in te loggen op de MySQL-console, dit keer met behulp van de aangepaste gebruikersreferenties:
mysql -u test_user -p
Let op de -pvlag in deze opdracht, die je zal vragen om het wachtwoord dat wordt gebruikt bij het aanmaken van de test_user gebruiker. Nadat je hebt aangemeld bij de MySQL-console, bevestigt je dat je toegang heeft tot de test_database database:
SHOW DATABASES;
Dit geeft je de output van welke databases deze gebruiker mag inzien/wijzigen.
Vervolgens maken we een testtabel met de naam todo_list . Voer vanuit de MySQL-console de volgende instructie uit:
CREATE TABLE test_database.todo_list (item_id INT AUTO_INCREMENT, content VARCHAR(255), PRIMARY KEY(item_id));
Voeg een paar rijen inhoud in de testtabel in. Misschien wil je de volgende opdracht een paar keer herhalen met verschillende waarden:
INSERT INTO test_database.todo_list (content) VALUES ("Mijn eerste belangrijke item");
Voer het volgende uit om te bevestigen dat de gegevens met succes zijn opgeslagen in je tabel:
SELECT * FROM test_database.todo_list;
Je ziet de output met inhoud van je database
Nadat je hebt bevestigd dat je geldige gegevens in je testtabel hebt, kun je de MySQL-console verlaten:
exit