Video: De vuelta al barrio - 11/12/2019 - Cap 531 - 4/4 2024
Wanneer MySQL is geïnstalleerd, wordt automatisch een database gemaakt met de naam mysql . Alle informatie die wordt gebruikt om uw gegevens te beschermen, wordt in deze database opgeslagen, inclusief accountnamen, hostnamen, wachtwoorden en privileges.
Privileges worden opgeslagen in kolommen. Het formaat van elke kolomnaam is privilege _priv, waarin privilege een specifiek accountrecht is. De kolom met ALTER-rechten heeft bijvoorbeeld de naam alter_priv. De waarde in elke kolom met bevoegdheden is Y of N, wat betekent ja of nee.
Zo zou er bijvoorbeeld in de gebruikerstabel een rij voor een account en een kolom voor alter_priv zijn. Als het accountveld voor alter_priv Y bevat, kan het account worden gebruikt om een ALTER-instructie uit te voeren. Als alter_priv N bevat, heeft het account niet het recht om een ALTER-instructie uit te voeren.
De MySQL-database bevat de volgende tabellen met opslagrechten:
-
gebruiker tabel: Deze tabel slaat privileges op die van toepassing zijn op alle databases en tabellen. Het bevat een rij voor elk geldig account dat de kolommen gebruikersnaam, hostnaam en wachtwoord bevat. De MySQL-server wijst een verbinding af voor een account die niet in deze tabel voorkomt.
-
db tabel: Deze tabel slaat privileges op die van toepassing zijn op een bepaalde database. Het bevat een rij voor de database, die bevoegdheden geeft aan een accountnaam en een hostnaam. Het account moet bestaan in de gebruikerstabel voor de rechten die moeten worden verleend. Privileges die in de gebruikerstabel worden gegeven, overschrijven privileges in deze tabel.
Als de gebruikerstabel bijvoorbeeld een rij heeft voor de accountontwerper die INSERT-rechten geeft, kan ontwerper deze invoegen in alle databases. Als een rij in de db-tabel N voor INSERT voor het designeraccount in de PetCatalog-database weergeeft, wordt deze door de gebruikerstabel overruled en kan ontwerper deze invoegen in de PetCatalog-database.
-
host tabel: Deze tabel bepaalt de toegang tot een database, afhankelijk van de host. De host-tabel werkt met de db-tabel. Als een rij in de db-tabel een leeg veld voor de host heeft, controleert MySQL de hosttabel om te zien of de db daar een rij heeft. Op deze manier kunt u toegang tot een db toestaan van sommige hosts, maar niet van anderen.
Stel dat u twee databases hebt: db1 en db2. De db1-database heeft gevoelige informatie, dus u wilt dat alleen bepaalde mensen het kunnen zien. De db2-database bevat informatie die iedereen wil zien. Als u een rij in de db-tabel hebt voor db1 met een leeg hostveld, kunt u twee rijen voor db1 in de hosttabel hebben.
Eén rij kan alle rechten verlenen aan gebruikers die verbinding maken met een specifieke host, terwijl een rij privileges kan weigeren aan gebruikers die verbinding maken met een andere host.
-
tabellen_priv tabel: In deze tabel worden privileges opgeslagen die van toepassing zijn op specifieke tabellen.
-
kolommen_priv tabel: Deze tabel slaat privileges op die van toepassing zijn op specifieke kolommen.
U kunt de tabellen in mysql direct bekijken en wijzigen als u een account gebruikt dat over de benodigde rechten beschikt. U kunt SQL-query's gebruiken, zoals SELECT, INSERT en UPDATE. Als u MySQL gebruikt via uw werkgever, een klant of een webhostingbedrijf, hebt u waarschijnlijk geen account met de benodigde rechten.