Ako nainštalovať a používať MySQL 8 na Ubuntu 22.04
Na tejto stránke
- Predpoklady
- Začíname
- Nainštalujte MySQL 8 Ubuntu 22.04
- Spravujte službu MySQL
- Bezpečná inštalácia MySQL
- Nastavte koreňové heslo MySQL
- Vytvorte databázu a používateľa v MySQL
- Odinštalujte MySQL Server
- Záver
MySQL je bezplatná platforma na správu relačných databáz s otvoreným zdrojovým kódom, ktorú využíva Oracle Cloud. Je veľmi obľúbený pre svoju overenú spoľahlivosť, rýchle spracovanie, jednoduchosť a flexibilitu. Používa štruktúrovaný dotazovací jazyk na pridávanie, prístup a správu obsahu databázy. MySQL 8.0 ukladá svoje metaúdaje do osvedčeného transakčného ukladacieho mechanizmu s názvom InnoDB. Funguje na architektúre klient/server a dá sa nainštalovať na všetky hlavné operačné systémy vrátane Ubuntu, Windows, CentOS a Debian.
Tento tutoriál vám ukáže, ako nainštalovať MySQL 8 na server Ubuntu 22.04.
Predpoklady
- Server so systémom Ubuntu 22.04.
- Na vašom serveri je nastavené root heslo.
Začíname
Najprv aktualizujte a inovujte všetky systémové balíky na najnovšiu verziu spustením nasledujúceho príkazu:
apt update -y
apt upgrade -y
Po aktualizácii všetkých balíkov môžete prejsť na ďalší krok.
Nainštalujte MySQL 8 Ubuntu 22.04
V predvolenom nastavení je najnovšia verzia servera MySQL zahrnutá v predvolenom úložisku Ubuntu. Môžete ho nainštalovať spustením nasledujúceho príkazu:
apt install mysql-server -y
Po nainštalovaní servera MySQL môžete overiť verziu MySQL pomocou nasledujúceho príkazu:
mysql --version
Verziu MySQL by ste mali vidieť v nasledujúcom výstupe:
mysql Ver 8.0.30-0ubuntu0.22.04.1 for Linux on x86_64 ((Ubuntu))
Po aktualizácii všetkých balíkov môžete prejsť na ďalší krok.
Spravujte službu MySQL
Štandardne je služba MySQL riadená systémom systemd. Pomocou príkazu systemctl môžete jednoducho spustiť, zastaviť a overiť stav MySQL.
Ak chcete spustiť službu MySQL, spustite nasledujúci príkaz:
systemctl start mysql
Ak chcete zastaviť službu MySQL, spustite nasledujúci príkaz:
systemctl stop mysql
Stav služby MySQL môžete overiť pomocou nasledujúceho príkazu:
systemctl status mysql
Mali by ste vidieť nasledujúci výstup:
? mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2022-08-21 12:47:24 UTC; 28s ago
Process: 26157 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
Main PID: 26185 (mysqld)
Status: "Server is operational"
Tasks: 41 (limit: 2242)
Memory: 359.8M
CPU: 1.383s
CGroup: /system.slice/mysql.service
??26185 /usr/sbin/mysqld
Aug 21 12:47:23 ubuntu2204 systemd[1]: Starting MySQL Community Server...
Aug 21 12:47:24 ubuntu2204 systemd[1]: Started MySQL Community Server.
MySQL štandardne počúva na porte 3306. Môžete to skontrolovať pomocou nasledujúceho príkazu:
ss -antpl | grep -i mysql
V nasledujúcom výstupe by ste mali vidieť port počúvania MySQL:
LISTEN 0 70 127.0.0.1:33060 0.0.0.0:* users:(("mysqld",pid=26185,fd=21))
LISTEN 0 151 127.0.0.1:3306 0.0.0.0:* users:(("mysqld",pid=26185,fd=23))
Po aktualizácii všetkých balíkov môžete prejsť na ďalší krok.
Bezpečná inštalácia MySQL
Ďalej je vždy dobré spustiť skript mysql_secure_installation, aby ste povolili niektoré ďalšie funkcie zabezpečenia vrátane nastavenia nového hesla root v MySQL, odstránenia anonymného používateľa a zakázania vzdialeného prihlásenia.
mysql_secure_installation
Odpovedzte na všetky otázky, ako je uvedené nižšie:
Securing the MySQL server deployment.
Connecting to MySQL using a blank password.
VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?
Press y|Y for Yes, any other key for No: Y
There are three levels of password validation policy:
LOW Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary file
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 0
Please set the password for root here.
Budete požiadaní o nastavenie nového hesla, ako je uvedené nižšie:
New password:
Re-enter new password:
Estimated strength of the password: 100
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Success.
Napíšte Y a stlačte kláves Enter, aby ste odstránili anonymného používateľa.
Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Success.
Napíšte Y a stlačte kláves Enter, aby ste zakázali vzdialené prihlásenie root.
By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
Napíšte Y a stlačte kláves Enter na odstránenie testovacej databázy.
- Dropping test database...
Success.
- Removing privileges on test database...
Success.
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
Success.
All done!
Po dokončení môžete prejsť na ďalší krok.
Nastavte koreňové heslo MySQL
V predvolenom nastavení nie je nastavené root heslo MySQL. Ak to chcete nastaviť, pripojte sa k shellu MySQL:
mysql
Po pripojení k shellu MySQL nastavte heslo MySQL pomocou nasledujúceho príkazu:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'securepassword';
Potom spustite nasledujúci príkaz na uloženie zmien:
mysql> FLUSH PRIVILEGES;
Potom opustite shell MySQL pomocou nasledujúceho príkazu:
mysql> EXIT;
Potom sa znova prihláste do shellu MySQL a overte heslo root:
mysql -u root -p
Po prihlásení sa dostanete do prostredia MySQL, ako je znázornené nižšie:
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 13
Server version: 8.0.30-0ubuntu0.22.04.1 (Ubuntu)
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
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>
Po dokončení môžete prejsť na ďalší krok.
Vytvorte databázu a používateľa v MySQL
Vytvorte databázu s názvom db1 pomocou nasledujúceho príkazu:
mysql> CREATE DATABASE db1;
Vytvorenú databázu môžete overiť pomocou nasledujúceho príkazu:
mysql> SHOW databases;
Získate nasledujúci výstup:
+--------------------+
| Database |
+--------------------+
| db1 |
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
Ak chcete zmeniť databázu na db1, spustite nasledujúci príkaz:
mysql> USE db1;
Ak chcete vytvoriť používateľa s názvom dbuser, spustite nasledujúci príkaz:
mysql> CREATE USER 'dbuser'@'%' IDENTIFIED BY 'password';
Ak chcete udeliť všetky privilégiá dbuseru vo všetkých databázach, spustite nasledujúci príkaz:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'dbuser'@'%' WITH GRANT OPTION;
Ak chcete uložiť zmeny, spustite nasledujúci príkaz:
mysql> FLUSH PRIVILEGES;
Shell MySQL môžete ukončiť pomocou nasledujúceho príkazu:
mysql> EXIT;
Po dokončení môžete prejsť na ďalší krok.
Odinštalujte MySQL Server
Ak chcete odstrániť server MySQL zo servera, spustite nasledujúci príkaz:
apt remove mysql-server --purge
Potom odstráňte všetky nechcené balíky pomocou nasledujúceho príkazu:
apt autoremove
Záver
V tomto príspevku ste sa naučili, ako nainštalovať MySQL 8 na Ubuntu 22.04. Naučili ste sa tiež spravovať službu MySQL a vytvárať databázu a používateľa. Teraz môžete začať vytvárať nové databázy a používateľov databázy v MySQL.