Installatie MySQL
Dit artikel is er om twee redenen:
- Handig om te weten hoe je überhaupt MySQL installeert
- MySQL is nogal kieskeurig als het gaat om configuratie-instellingen: Eén foutje, en het werkt niet meer. Daarom handig om de installatieprocedure goed te snappen, zodat ik weet wat ik precies moet doen om een cleane installatie te krijgen - Want dat gaat niet vanzelf!
Installatieprocedure - Linux Mint (mei 2018)
Dit betreft de algemene procedure voor installatie op een bijgewerkte instantie van Linux Mint 18.3 "Sylvia", uitgekomen in november 2017, gebaseerd op Ubuntu 16.04 [1].
Eigenlijke installatie
De eigenlijke installatie stelt weinig voor, en is in vijf minuten gedaan:
sudo apt install mysql-server
- Dit resulteert in een complete installatie van MySQL 5.7, inclusief de MySQL-client. Opvallend dat MySQL 5.7 wordt geïnstalleerd, maar niet 8.0. Overigens: MySQL Workbench voor 8.0 is lastig te installeren, dus wellicht een goede zaak om voorlopig nog versie 5.7 te gebruiken
- Tijdens de installatieprocedure wordt er om een nieuw root-wachtwoord gevraagd.
Installatie - bestanden & acties
Wat er zoal gebeurt (copy-past werkt niet want virtuele machine):
* Setting up mysql-common * Setting up mysql-server-core-5.7 * Setting up mysql-client-core-5.7 * Setting up mysql-client-5.7 * Setting up libevent-core-2.0-5 * Setting up * Triggers man-db * Triggers ureadahead * Triggers systemd * Triggers libc-bin
- Ik geloof dat dit weinig zegt. Oa. staat er niet vermeld dat er mappen zoals
/etc/mysql
worden aangemaakt (en die map was er voor de installatie niet!). - De basis-storage location is /var/lib/mysql. Eigenaar van alle bestanden: mysql. Groep: mysql
Security hardening-script
Mbv. sudo mysql_secure_installation
kun je de beveiliging bijwerken. Dat gebruik ik wel op servers, maar niet op locale ontwikkelomgevingen. Onderdeel van dit script, is het aanmaken van een MySQL-gebruikersaccount, maar dat lijkt niet te werken, want naderhand is dat account niet beschikbaar. Sterker nog: Zelfs 'gewoon' inloggen met het root-account lijkt dan niet te werken. Wat dan wel werkt: sudo mysql -u root -p
.
Gebruikersaccount aanmaken
Direct na installatie is er alleen een root-account beschikbaar. Daarin kun je inloggen middels mysl -u root -p
- Gebruiker aanmaken met zoiets als
grant all on *.* to jeroen@localhost identified by 'MijnGeheimeWachtwoord' with grant option;
. Zie Gebruikers & rechten (MySQL) voor details - Ik zou nu
FLUSH PRIVILEGES;
moeten doen om het nieuwe account te activeren, maar dat lijkt in de praktijk niet nodig te zijn - Verifiëer met
select user, grant_priv from mysql.user;
dat dit account werkt.
Verder: Indien het MySQL-gebruikersaccount dezelfde naam heeft als het computeraccount waarin ik werk, kan ik voortaan inloggen met mysql -p
.
Inloggen zonder wachtwoord
Creëer een .my.cnf
-bestand met bijpassende inhoud en bestandsrechten, om voortaan zonder wachtwoord te kunnen inloggen. Zie Gebruikers & inloggen (MySQL) voor details.
Verplaats storage location naar dropbox
Zie Storage location aanpassen (MySQL).
Overige aanpassingen
Zie ook
- Data directory (MySQL)
- Deïnstallatie MySQL
- Gebruikers & inloggen (MySQL)
- Gebruikers & rechten (MySQL)