támogatási hálózat
telepítse a MySQL szervert az Ubuntu operációs rendszerre
Utolsó frissítés:: 2019-12-20
szerző: Jered Heeschen
a MySQL egy nyílt forráskódú relációs adatbázis, amely ingyenes és széles körben használt. Jó választás, ha tudja, hogy szüksége van egy adatbázisra, de nem sokat tud az összes rendelkezésre álló lehetőségről.
ez a cikk egy MySQL adatbázis-kiszolgáló alapvető telepítését ismerteti az Ubuntu operációs rendszeren. Lehet, hogy más csomagokat kell telepítenieaz alkalmazások a MySQL-t használják, például a PHP kiterjesztéseit. A részletekért ellenőrizze az alkalmazásdokumentációt.
telepítse a MySQL-t
telepítse a MySQL-kiszolgálót az Ubuntu operációs rendszer csomagkezelőjével:
sudo apt-get updatesudo apt-get install mysql-server
a telepítő telepíti a MySQL-t és az összes függőséget.
ha a biztonságos telepítési segédprogram nem indul el automatikusan a telepítés befejezése után, írja be a következő parancsot:
sudo mysql_secure_installation utility
ez a segédprogram kéri, hogy adja meg a MySQL root passwordand egyéb biztonsággal kapcsolatos beállításokat, beleértve eltávolítja a távoli hozzáférésta root felhasználó és a beállítás a root jelszót.
távoli hozzáférés engedélyezése
ha az iptables engedélyezve van, és egy másik gépről szeretne csatlakozni a MySQL adatbázishoz, meg kell nyitnia egy portot a kiszolgáló tűzfalában (az alapértelmezett port 3306). Nem kell ezt tennie, ha a MySQL-t használó alkalmazásugyanazon a kiszolgálón fut.
futtassa a következő parancsot a MySQL szerver távoli elérésének engedélyezéséhez:
sudo ufw enablesudo ufw allow mysql
indítsa el a MySQL szolgáltatást
a telepítés befejezése után elindíthatja az adatbázis-szolgáltatásta következő parancs futtatásával. Ha a szolgáltatás már elindult, egy üzenetinformálja, hogy a szolgáltatás már fut:
sudo systemctl start mysql
indítás újraindításkor
annak érdekében, hogy az adatbázis-kiszolgáló újraindítás után elinduljon, futtassa a következő parancsot:
sudo systemctl enable mysql
konfigurálása interfészek
MySQL, alapértelmezés szerint már nem kötődik ( hallgat ) bármely távolról elérhető interfészek.Szerkessze a “bind-address” irányelvet az /etc/mysql/mysql könyvtárban.conf.d / mysqld.cnf:
bind-address= 127.0.0.1 ( The default. )bind-address= XXX.XXX.XXX.XXX ( The ip address of your Public Net interface. )bind-address= ZZZ.ZZZ.ZZZ.ZZZ ( The ip address of your Service Net interface. )bind-address= 0.0.0.0 ( All ip addresses. )
indítsa újra a mysql szolgáltatást.
sudo systemctl restart mysql
indítsa el a mysql shell-t
a MySQL szerverrel többféle módon is lehet dolgozni, de ez a cikk a legalapvetőbb és kompatibilis megközelítésre, a mysql
shell-re összpontosít.
-
a parancssorban futtassa a következő parancsot a
mysql
shell indításához, majd írja be root felhasználóként:/usr/bin/mysql -u root -p
-
amikor a rendszer kéri a jelszó megadását, írja be azt, amelyet beállítotttelepítési idő, vagy ha még nem állított be, nyomja meg az Enter billentyűt a nopassword elküldéséhez.
a következő
mysql
shell prompt jelenik meg:mysql>
a root jelszó beállítása
ha üres jelszó megadásával jelentkezett be, vagy ha módosítani szeretné a beállított rootjelszót, akkor létrehozhatja vagy módosíthatja a jelszót.
-
a MySQL 5.7-nél korábbi verziók esetén írja be a következő parancsot a
mysql
héjba, cserélje le apassword
– etaz Új jelszó:UPDATE mysql.user SET Password = PASSWORD('password') WHERE User = 'root';
a MySQL 5.7-es vagy újabb verzióhoz írja be a következő parancsot a
mysql
héjba, apassword
helyettaz Új jelszó:UPDATE mysql.user SET authentication_string = PASSWORD('password') WHERE User = 'root';
-
a módosítás érvénybe léptetéséhez töltse be újra a tárolt felhasználói információkat a következő paranccsal:
FLUSH PRIVILEGES;
Megjegyzés: Az SQL parancsokhoz teljes sapkát használunk. Ha ezeket a parancsokat kisbetűvel írja be, akkor működni fognak. A konvenció szerint a parancsokat nagybetűkkel írják, hogy kitűnjenek a mezőnevek és más manipulált adatok közül.
ha később vissza kell állítania a root jelszót, olvassa el a MySQL root jelszó visszaállítása című témakört.
felhasználók megtekintése
a MySQL a felhasználói információkat saját adatbázisában tárolja. Az adatbázis nevea mysql. Ezen az adatbázison belül a felhasználói információk egy táblázatban, adataset, nevű felhasználó. Ha meg szeretné tekinteni, hogy milyen felhasználók vannak beállítva a MySQLuser táblában, futtassa a következő parancsot:
SELECT User, Host, authentication_string FROM mysql.user;
az alábbi lista a parancs részeit ismerteti:
- válassza azt mondja a MySQL-nek, hogy adatokat kér.
- User, Host, authentication_string megmondja a MySQL-nek, hogy milyen mezőket szeretne belenézni. A mezők a táblázatban szereplő adatok kategóriái. Ebben az esetben önkeresi a felhasználónevet, a felhasználónévhez társított gazdagépet, ésa titkosított jelszó megadása.
- a mysql-től.a “felhasználó” azt mondja a MySQL-nek, hogy szerezze be az adatokat a mysqldatabase-ből és a felhasználói táblából.
- pontosvessző (;) fejezi be a parancsot.
Megjegyzés: minden SQL lekérdezés pontosvesszővel végződik. A MySQL nem dolgozza fel a lekérdezéstamíg be nem ír egy pontosvesszőt.
User hosts
a következő példa az előző lekérdezés kimenete:
SELECT User, Host, authentication_string FROM mysql.user;+------------------+-----------+-------------------------------------------+| User | Host | authentication_string |+------------------+-----------+-------------------------------------------+| root | localhost | *756FEC25AC0E1823C9838EE1A9A6730A20ACDA21 || mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE || mysql.sys | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE || debian-sys-maint | localhost | *27E7CA2445405AB10C656AFD0F86AF76CCC57692 |+------------------+-----------+-------------------------------------------+
a felhasználók egy gazdagéphez vannak társítva, konkrétan ahhoz a gazdagéphez, ahonnan csatlakoznak.Ebben a példában a root felhasználó a localhosthoz, a localhost IP-címéhez és a kiszolgáló hosztnevéhez van definiálva.Általában csak egy gazdagéphez kell beállítania a felhasználót, ahonnan tipikusan csatlakozik.
ha az alkalmazást ugyanazon a számítógépen futtatja, mint a MySQLserver, akkor az a gazdagép, amelyhez alapértelmezés szerint csatlakozik, a localhost. Minden létrehozott újfelhasználónak rendelkeznie kell a localhost-tal a gazdagép mezőjében.
ha az alkalmazás távolról csatlakozik, akkor a MySQL által keresett gazdagépbejegyzésa távoli számítógép IP-címe vagy DNS-gazdagépneve (az, ahonnan az ügyfél jön).
névtelen felhasználók
a példakimenetben egy bejegyzésnek van host értéke, de nincs felhasználóneve vagy jelszava.Ez egy névtelen felhasználó. Amikor egy ügyfél felhasználónév nélkül csatlakozik, névtelen felhasználóként próbál csatlakozni.
általában nem szeretne névtelen felhasználókat, de néhány MySQL telepítés alapértelmezés szerint tartalmaz egyet. Ha lát egyet, törölje a felhasználót(lásd a felhasználónevet üres idézőjelekkel, például”), vagy állítson be jelszót hozzá.
adatbázis létrehozása
különbség van az adatbázis-kiszolgáló és az adatbázis között, annak ellenére, hogy ezeket a kifejezéseket gyakran felcserélhető módon használják. A MySQL egy adatbázis-kiszolgáló, ami azt jelenti, hogy nyomon követi az adatbázisokat és ellenőrzi az azokhoz való hozzáférést. Az adatbázis tárolja az adatokat, ésez az adatbázis, amelyet az alkalmazások megpróbálnak elérni, amikor kölcsönhatásba lépnek a MySQL-vel.
egyes alkalmazások létrehoznak egy adatbázist a telepítési folyamat részeként, de mások megkövetelik, hogy saját maga hozzon létre egy adatbázist, és mondja el az alkalmazásnak.
adatbázis létrehozásához jelentkezzen be a mysql
héjba, és futtassa a következő parancsot,a demodb
helyett a létrehozni kívánt adatbázis nevét:
CREATE DATABASE demodb;
az adatbázis létrehozása után ellenőrizheti annak létrehozását egy lekérdezés futtatásávalaz összes adatbázis felsorolása. A következő példa a lekérdezés és a példa kimenetét mutatja:
SHOW DATABASES;+--------------------+| Database |+--------------------+| information_schema || demodb || mysql |+--------------------+3 rows in set (0.00 sec)
adatbázis-felhasználó hozzáadása
amikor az alkalmazások a root felhasználóval csatlakoznak az adatbázishoz, általában több jogosultsággal rendelkeznek, mint amennyire szükségük van. Felvehet olyan felhasználókat, amelyeket az alkalmazások használhatnak az új adatbázishoz való csatlakozáshoz. A következő példában egy demouser nevű felhasználó jön létre.
-
új felhasználó létrehozásához futtassa a következő parancsot a
mysql
héjban:INSERT INTO mysql.user (User,Host,authentication_string,ssl_cipher,x509_issuer,x509_subject)VALUES('demouser','localhost',PASSWORD('demopassword'),'','','');
-
amikor módosítja a felhasználói táblát a mysql adatbázisban, mondja meg a MySQL-nek, hogy olvassa el a módosításokat a jogosultságok átöblítésével, az alábbiak szerint:
FLUSH PRIVILEGES;
-
ellenőrizze, hogy a felhasználó létrejött-e egy SELECT lekérdezés ismételt futtatásával:
SELECT User, Host, authentication_string FROM mysql.user;+------------------+-----------+-------------------------------------------+| User | Host | Password |+------------------+-----------+-------------------------------------------+| root | localhost | *756FEC25AC0E1823C9838EE1A9A6730A20ACDA21 || mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE || mysql.sys | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE || debian-sys-maint | localhost | *27E7CA2445405AB10C656AFD0F86AF76CCC57692 || demouser | localhost | *0756A562377EDF6ED3AC45A00B356AAE6D3C6BB6 |+------------------+-----------+-------------------------------------------+
az adatbázis felhasználói engedélyeinek megadása
közvetlenül az új felhasználó létrehozása után nincs jogosultsága. A felhasználó bejelentkezhet, de nem használható az adatbázis módosítására.
Összegzés
ha csak egy adatbázist és egy felhasználót hoz létre, akkor kész. A conceptscovered itt kell adni egy szilárd kiindulási ahonnan többet.
- konfigurálja a MySQL kiszolgálót az Ubuntu operációs rendszeren
- állítsa vissza a MySQL gyökér jelszavát