Hoe MySQL te installeren op Ubuntu 16.04
Inleiding
MySQL is een open-source database management systeem, dat vaak wordt geïnstalleerd als onderdeel van de populaire LAMP (Linux, Apache, MySQL, PHP/Python/Perl) stack. Het maakt gebruik van een relationele database en SQL (Structured Query Language) om de gegevens te beheren.
De korte versie van de installatie is eenvoudig: update uw package index, installeer het mysql-server
pakket, en voer vervolgens het meegeleverde beveiligingsscript uit.
- sudo apt-get update
- sudo apt-get install mysql-server
- mysql_secure_installation
Deze tutorial zal uitleggen hoe u MySQL versie 5.7 op een Ubuntu 16.04 server installeert. Als u echter een bestaande MySQL installatie wilt updaten naar versie 5.7, kunt u in plaats daarvan deze MySQL 5.7 update gids lezen.
Voorvereisten
Om deze tutorial te volgen, heeft u nodig:
- Een Ubuntu 16.04 server die volgens deze handleiding is ingesteld, inclusief een sudo niet-root gebruiker en een firewall.
Stap 1 – MySQL installeren
Op Ubuntu 16.04 is standaard alleen de nieuwste versie van MySQL opgenomen in de APT package repository. Op het moment van schrijven is dat MySQL 5.7
Om het te installeren, update je gewoon de package index op je server en installeer je het standaard pakket met apt-get
.
- sudo apt-get update
- sudo apt-get install mysql-server
Je wordt gevraagd om een root wachtwoord te maken tijdens de installatie. Kies een veilig wachtwoord en zorg ervoor dat u het onthoudt, want u zult het later nodig hebben. Vervolgens maken we de configuratie van MySQL af.
Stap 2 – MySQL configureren
Voor nieuwe installaties moet u het meegeleverde beveiligingsscript uitvoeren. Dit verandert enkele van de minder veilige standaard opties voor zaken als remote root logins en sample users. Op oudere versies van MySQL moest u de data directory ook handmatig initialiseren, maar dit wordt nu automatisch gedaan.
Run het beveiligingsscript.
- mysql_secure_installation
Dit zal u vragen om het root wachtwoord dat u in stap 1 heeft aangemaakt. U kunt op Y
en dan ENTER
drukken om de standaardwaarden voor alle volgende vragen te accepteren, met uitzondering van de vraag of u het root-wachtwoord wilt wijzigen. U hebt het net ingesteld in stap 1, dus u hoeft het nu niet te wijzigen. Voor een meer gedetailleerde uitleg van deze opties, kunt u deze stap van de LAMP installatie tutorial bekijken.
Om de MySQL data directory te initialiseren, zou u mysql_install_db
gebruiken voor versies vóór 5.7.6, en mysqld --initialize
voor 5.7.6 en later. Echter, als u MySQL heeft geïnstalleerd vanaf de Debian distributie, zoals in Stap 1, dan is de data directory automatisch geïnitialiseerd; u hoeft niets te doen. Als u het commando toch probeert uit te voeren, zult u de volgende foutmelding te zien krijgen:
2016-03-07T20:11:15.998193Z 0 --initialize specified but the data directory has files in it. Aborting.
Finishing, laten we de MySQL installatie testen.
Stap 3 – MySQL testen
Of u het nu geïnstalleerd heeft, MySQL zou automatisch opgestart moeten zijn. Om dit te testen, controleert u de status.
- systemctl status mysql.service
U zult uitvoer zien die lijkt op de volgende:
● mysql.service - MySQL Community Server Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en Active: active (running) since Wed 2016-11-23 21:21:25 UTC; 30min ago Main PID: 3754 (mysqld) Tasks: 28 Memory: 142.3M CPU: 1.994s CGroup: /system.slice/mysql.service └─3754 /usr/sbin/mysqld
Als MySQL niet draait, kunt u het starten met sudo systemctl start mysql
.
Voor een extra controle, kunt u proberen verbinding te maken met de database met behulp van de mysqladmin
tool, dat is een client waarmee u administratieve commando’s kunt uitvoeren. Bijvoorbeeld, dit commando zegt om verbinding te maken met MySQL als root (-u root
), vraagt om een wachtwoord (-p
), en geeft de versie terug.
- mysqladmin -p -u root version
U zou uitvoer zoals deze moeten zien:
mysqladmin Ver 8.42 Distrib 5.7.16, for Linux on x86_64Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Server version 5.7.16-0ubuntu0.16.04.1Protocol version 10Connection Localhost via UNIX socketUNIX socket /var/run/mysqld/mysqld.sockUptime: 30 min 54 secThreads: 1 Questions: 12 Slow queries: 0 Opens: 115 Flush tables: 1 Open tables: 34 Queries per second avg: 0.006
Dit betekent dat MySQL draait.
Conclusie
U hebt nu een basis MySQL setup op uw server geïnstalleerd. Hier zijn een paar voorbeelden van volgende stappen die u kunt nemen:
- Verhoog de veiligheid
- Verplaats de data directory
- Beheer uw MySQL servers met SaltStack
- Lees meer over MySQL commando’s