MySQL je open-source systém pro správu relačních databází. V současné době je vyvíjen pod hlavičkou Oracle Corporation. MySQL 8 je nejnovější verze dostupná pro instalaci a používání produkční aplikace. MySQL 8.0 má mnoho vylepšení a 2x rychlost zpracování oproti předchozí verzi. V této verzi obsahuje tým MySQL úložiště dokumentů pro vývoj aplikací pro dokumenty SQL i NoSQL pomocí jediné databáze.
Tento tutoriál vám pomůže nainstalovat MySQL 8 na systémy CentOS 8 a RHEL 8.
Předpoklady
Musíte mít přístup k shellu s privilegovaným účtem sudo v systému CentOS 8.
Krok 1 – Instalace MySQL
Balíčky MySQL 8 jsou dostupné v úložišti AppStrem pod CentOS 8. Nainstalujte požadované balíčky pomocí následujícího příkazu. Tím se také nainstaluje několik závislých balíčků.
sudo dnf -y install @mysql
Po dokončení instalace povolte automatické spouštění služby MySQL při startu systému. Také poprvé spusťte službu ručně.
sudo systemctl enable mysqld.service sudo systemctl start mysqld.service
Poté zkontrolujte aktuální stav služby pomocí následujícího příkazu:
sudo systemctl status mysqld.service
● mysqld.service - MySQL 8.0 database server Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled) Active: active (running) since Tue 2020-02-25 04:43:13 UTC; 22s ago Main PID: 16666 (mysqld) Status: "Server is operational" Tasks: 39 (limit: 17963) Memory: 534.9M CGroup: /system.slice/mysqld.service └─16666 /usr/libexec/mysqld --basedir=/usr Feb 25 04:43:04 tecadmin systemd[1]: Starting MySQL 8.0 database server... Feb 25 04:43:04 tecadmin mysql-prepare-db-dir[16582]: Initializing MySQL database Feb 25 04:43:13 tecadmin systemd[1]: Started MySQL 8.0 database server.
Krok 2 – Bezpečná instalace MySQL
Instalace MySQL byla dokončena. Nyní se můžete připojit k serveru MySQL bez hesla, ale doporučujeme instalaci MySQL zabezpečit. Balíčky MySQL poskytují mysql_secure_installation
příkaz k použití zabezpečení. Stačí spustit níže uvedený příkaz na terminálu:
sudo mysql_secure_installation
a postupujte podle pokynů na obrazovce. Níže jsou uvedeny podrobnosti, které vyžadují vstup uživatele.
- Stiskněte y|Y pro Ano, jakoukoli jinou klávesu pro Ne:y
- Zadejte prosím 0 =NÍZKÁ, 1 =STŘEDNÍ a 2 =SILNÁ:2
- Nové heslo:[ZDE ZADEJTE SILNÉ HESLO]
- Znovu zadejte nové heslo:ZDE ZADEJTE HESLO ZNOVU
- Přejete si pokračovat se zadaným heslem? (Stiskněte y|Y pro Ano, jakékoli jiné pro Ne) :y
- Odebrat anonymní uživatele? (Stiskněte y|Y pro Ano, jakoukoli jinou klávesu pro Ne) :y
- Zakázat vzdálené přihlášení root? (Stiskněte y|Y pro Ano, jakoukoli jinou klávesu pro Ne) :y
- Odebrat testovací databázi a získat k ní přístup? (Stiskněte y|Y pro Ano, jakoukoli jinou klávesu pro Ne) :y
- Načíst znovu tabulky oprávnění? (Stiskněte y|Y pro Ano, jakoukoli jinou klávesu pro Ne) :y
Krok 3 – Připojte MySQL
Dokončili jste instalaci a zabezpečili MySQL server. Nyní se připojte k serveru MySQL přes konzoli nebo nainstalujte phpMyAdmin, abyste mohli používat grafické webové rozhraní.
mysql -u root -p
Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 10 Server version: 8.0.17 Source distribution Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
Krok 4 – Vytvoření databáze a uživatele
Nedoporučuje se používat uživatele „root“ pro připojení databází z aplikací. Je tedy dobré vytvořit samostatného uživatele pro připojení k databázi aplikace. Níže jsou uvedeny příkazy pro vytvoření nové databáze MySQL, poté vytvoření nového uživatele MySQL a přiřazení oprávnění k databázi.
Databázi a uživatelské jméno můžete změnit podle svých požadavků. Pro uživatele také použijte silné heslo.
mysql> CREATE DATABASE tecadmin; Query OK, 1 row affected (0.01 sec) mysql> CREATE USER 'tecadmin'@'localhost' IDENTIFIED BY 'your secure password here'; Query OK, 0 rows affected (0.00 sec) mysql> GRANT ALL ON tecadmin.* to 'tecadmin'@'localhost'; Query OK, 0 rows affected (0.00 sec) mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.00 sec)
Nyní se připojte k serveru MySQL pomocí nově vytvořeného uživatele a vypište dostupné databáze.
mysql -u tecadmin -p
Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 11 Server version: 8.0.17 Source distribution Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | tecadmin | +--------------------+ 2 rows in set (0.01 sec) mysql>
Závěr
Úspěšně jste nainstalovali a nakonfigurovali MySQL 8.0 na systému CentOS 8. Váš server je připraven k produkčnímu použití. Můžete také vyžadovat konfiguraci skriptu automatického zálohování databáze pro produkční systém.