sql >> Database >  >> RDS >> Mysql

Hoe MySQL op Ubuntu te installeren en configureren

MySQL is een van de meest voorkomende open-source relationele databasebeheersystemen (RDBMS), gebaseerd op de Structured Query Language (SQL), een programmeertaal die wordt gebruikt om gegevens in een database te beheren.

Het is snel, eenvoudig te gebruiken, zelfs voor beginners die beginnen met backend-ontwikkeling, en geïntegreerd in verschillende stapelpakketten zoals Xampp, Lampp en Wamp.

In dit specifieke bericht laten we u zien hoe u de MySQL-server in uw Ubuntu-systeem installeert. Aanvullende informatie omvat het configureren van de beveiligingsopties, het aanpassen van authenticatiemethoden en het maken van een nieuwe gebruiker. Onze Ubuntu-release naar keuze in deze tutorial is Ubuntu 20.04 LTS, de nieuwste release op het moment van schrijven van dit artikel.

MySQL installeren op Ubuntu

Vereisten

U moet verhoogde rechten (root) op uw systeem hebben. U kunt dit doen door de onderstaande opdracht uit te voeren.

sudo su

Procedure

Op het moment van schrijven van dit bericht is de huidige MySQL Linux-release versie 5.7. Volg de onderstaande stappen om met de installatie te beginnen:

Stap 1) Zorg ervoor dat alle pakketten en opslagplaatsen in uw systeem up-to-date zijn. U kunt dit doen door de onderstaande opdracht uit te voeren:

sudo apt update

Stap 2) Nu gaan we MySQL installeren via de apt-pakketbeheerder. Voer de onderstaande opdracht uit.

sudo apt install mysql-server

Stap 3) Na een succesvolle installatie zou de mysql-service automatisch moeten starten. U kunt dat bevestigen door het onderstaande commando uit te voeren:

sudo systemctl status mysql

U zou een uitvoer moeten krijgen die lijkt op die op de onderstaande afbeelding.

Als de service niet actief is, voer dan de onderstaande opdracht uit:

sudo /etc/init.d/mysql start

Verifieer MySQL-installatie (optioneel)

U kunt uw installatie verifiëren door de onderstaande opdracht uit te voeren, die de MySQL-versie en -distributie zal uitvoeren die op uw systeem is geïnstalleerd.

mysql --version

Beveilig uw MySQL-server

Nu de MySQL-server met succes is geïnstalleerd, moet u een paar parameters instellen om de beveiliging van de server en databases die u in de toekomst configureert te garanderen.

In andere gevallen, nadat de installatie van het MySQL Server-pakket is voltooid, wordt het hulpprogramma mysql-secure-installation automatisch gestart. Als dit voor u echter niet het geval is, voert u de onderstaande opdracht uit:

sudo mysql_secure_installation

U ziet een prompt waarin u wordt gevraagd of u de PASWOORDPLUGIN wilt VALIDEREN. Het verbetert de beveiliging van de MySQL-server door de sterkte van gebruikerswachtwoorden te controleren, zodat gebruikers alleen sterke wachtwoorden kunnen instellen. Druk op Y om VALIDATIE te accepteren of op de RETURN-toets om over te slaan.

Vervolgens zou u een prompt moeten zien om het root-wachtwoord in te stellen. Voer uw wachtwoord in en druk op enter. Let op, om veiligheidsredenen wordt niet weergegeven wat u in de console typt.

Vervolgens zou u een prompt moeten zien waarin u wordt gevraagd of u alle anonieme gebruikers wilt verwijderen, voer Y in voor JA. Voer voor alle andere prompts vanaf hier Y in voor JA.

Log in als root en pas gebruikersauthenticatie aan

MySQL-server wordt geleverd met een hulpprogramma aan de clientzijde waarmee u de database kunt openen en gebruiken vanaf de Linux Terminal.

Meestal worden gebruikers die toegang krijgen tot de server, na een nieuwe installatie van MySQL op Ubuntu zonder configuraties, geverifieerd met behulp van de plug-in voor authenticatie-socket (auth_socket).

Het gebruik van auth_socket verhindert de server om een ​​gebruiker te authenticeren met een wachtwoord. Het roept niet alleen veiligheidsproblemen op, maar het verhindert ook dat gebruikers toegang krijgen tot de database met behulp van externe programma's zoals phpMyAdmin. We moeten de authenticatiemethode wijzigen van auth_socket in het gebruik van mysql_native_password.

Om dit te doen, moeten we de MySQL-console openen. Voer de volgende opdracht uit op de Linux Terminal.

sudo mysql

Nu moeten we de authenticatiemethode controleren die door de database voor verschillende gebruikers wordt gebruikt. U kunt dit doen door de onderstaande opdracht uit te voeren.

SELECT user,authentication_string,plugin,host FROM mysql.user;

Uit de bovenstaande afbeelding kunnen we bevestigen dat de rootgebruiker inderdaad is geverifieerd met behulp van de plug-in auth_socket. We moeten overschakelen naar het gebruik van 'wachtwoordauthenticatie' met behulp van de onderstaande 'ALTER USER'-opdracht. Zorg ervoor dat u een veilig wachtwoord gebruikt (moet meer dan acht tekens bevatten en cijfers, tekenreeksen en speciale symbolen combineren), aangezien dit het wachtwoord vervangt dat u hebt ingesteld bij het uitvoeren van de opdracht 'sudo mysql_secure_installation' hierboven. Voer de onderstaande opdracht uit.

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password';

Let op, de gemarkeerde tekst in de afbeelding hierboven is waar u uw veilige wachtwoord invoert. Zet het tussen enkele tags. Nu moeten we de toekenningstabellen opnieuw laden en de wijzigingen op de MySQL-server bijwerken. Doe dit door het onderstaande commando uit te voeren.

FLUSH PRIVILEGES;

Als we klaar zijn, moeten we bevestigen dat het rootgebruik auth_socket niet langer gebruikt voor authenticatie. Doe dit door de onderstaande opdracht opnieuw uit te voeren.

SELECT user,authentication_string,plugin,host FROM mysql.user;

In de bovenstaande afbeelding zien we dat de root-authenticatiemethode is gewijzigd van 'auth_socket' in 'wachtwoord'.

Omdat we de authenticatiemethode voor root hebben gewijzigd, kunnen we niet dezelfde opdracht gebruiken die we eerder hebben gebruikt om de MySQL-console te openen. Dat wil zeggen, 'sudo mysql'. We moeten de gebruikersnaam en wachtwoordparameters opnemen, zoals hieronder weergegeven.

mysql -u root -p

De '-u' geeft de gebruiker aan, wat 'root' is voor ons geval en '-p' staat voor 'wachtwoord', dat de server u zal vragen om in te voeren zodra u op de Enter-toets drukt.

Een nieuwe gebruiker maken

Zodra alles is ingesteld, kunt u een nieuwe gebruiker maken die u de juiste rechten geeft. In ons geval hier, zullen we een gebruiker 'tuts_fosslinux' maken en rechten toewijzen over alle databasetabellen en toestemming om gebruikersrechten te wijzigen, verwijderen en toe te voegen. Voer regel voor regel de commando's uit.

CREATE USER 'tuts_fosslinux'@'localhost' IDENTIFIED BY 'strong_password';

GRANT ALL PRIVILEGES ON *.* TO 'tuts_fosslinux'@'localhost' WITH GRANT OPTION;

De eerste opdracht maakt de nieuwe gebruiker aan en de tweede kent de benodigde rechten toe.

We kunnen onze nieuwe gebruiker nu testen door de onderstaande opdracht uit te voeren.

mysql -u tuts_fosslinux -p

Installeer MySQL-Server op de Ubuntu-server

Het installeren van MySQL-server op de Ubuntu-server verschilt niet veel van de hierboven beschreven stappen. Omdat een server echter op afstand wordt benaderd, moeten we ook externe toegang voor onze server inschakelen.

Om de database te installeren en beveiligingsopties te configureren, voert u de volgende opdrachten regel voor regel uit op de Terminal.

sudo apt update
sudo apt install mysql-server
sudo mysql_secure_installation

Na een succesvolle installatie moeten we externe toegang inschakelen. Logischerwijs hoeven we alleen maar een poort op de Ubuntu-serverfirewall te openen zodat de MySQL-server kan communiceren. Standaard draait de MySQL-service op poort 3306. Voer de onderstaande opdrachten uit.

sudo ufw enable
sudo ufw allow mysql

Om de betrouwbaarheid en toegankelijkheid van onze MySQL-databases te verbeteren, kunnen we de MySQL-serverservice configureren om bij het opstarten te starten. Voer hiervoor de onderstaande opdracht uit.

sudo systemctl enable mysql

Nu moeten we de interfaces van onze server configureren. Hierdoor kan de server luisteren naar op afstand toegankelijke interfaces. We zullen het bestand 'mysqld.cnf' moeten bewerken. Voer de onderstaande opdrachten uit.

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

Het bindadres is standaard '127.0.0.1'. Voeg een bindadres toe voor uw openbare Net Interface en een ander voor de Service Net-interface. U kunt uw bind-adres configureren als '0.0.0.0' voor alle Ip-adressen.

Conclusie

Ik hoop dat je genoten hebt van deze tutorial over het instellen van de MySQL-server op je Ubuntu-systeem. Als je net begint met MySQL en je hoeft alleen maar een eenvoudige database en gebruiker te maken, dan zouden de bovenstaande stappen van grote hulp moeten zijn. Als je dit artikel vindingrijk vindt, deel de link dan gerust met een vriend.


  1. MySQL-prestaties:gebruik maken van MySQL-database-indexering

  2. MySQL - Waarde aftrekken van de vorige rij, groeperen op

  3. JDBC ResultSet krijg kolommen met tabelalias

  4. snelle selectie van een willekeurige rij uit een grote tabel in mysql