Bii O ṣe le Ṣẹda Olumulo tuntun ati Awọn igbanilaaye fifunni ni MySQL


MySQL jẹ olokiki ati gbooro lilo eto iṣakoso data ti o tọju ati ṣeto data ati gba awọn olumulo laaye lati gba pada. O wa pẹlu ọpọlọpọ awọn aṣayan ti o fun awọn olumulo ni awọn igbanilaaye kan si awọn tabili ati awọn apoti isura data.

Ninu itọsọna yii, iwọ yoo kọ bi o ṣe le ṣẹda olumulo tuntun ati fifun awọn igbanilaaye ninu ibi ipamọ data MySQL.

Bii o ṣe Ṣẹda Olumulo tuntun ni MySQL

Lati ṣẹda olumulo tuntun akọkọ wọle si ikarahun MySQL.

$ sudo mysql -u root -p

Pese ọrọ igbaniwọle sudo atẹle nipa ọrọigbaniwọle ti o pese nigbati o ba ṣeto ipilẹ data MySQL ki o lu Tẹ. Lẹhinna, iwọ yoo gba iyara yii.

Lati ṣẹda olumulo tuntun, lo ọna asopọ ti o han ni isalẹ:

MariaDB [none]> CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';

Fun apẹẹrẹ, lati ṣẹda olumulo tuntun ti a pe ni 'tecmint' laarin ibi ipamọ data, pe aṣẹ naa:

MariaDB [none]> CREATE USER 'tecmint'@'localhost' IDENTIFIED BY 'QkYKmw$5tec';

Nigbati o ba n ṣafikun olumulo ni agbegbe ie, lori eto ti o ti fi MySQL sii, a ti ṣalaye alejo ti olumulo bi localhost, kii ṣe adirẹsi IP naa. Koko-ọrọ 'localhost' tumọ si 'kọmputa yii' ati MySQL ṣe itọju rẹ ni iyasọtọ. Ni ipilẹṣẹ, a lo localhost nipasẹ alabara mysql lati fi idi asopọ kan mulẹ si olupin data MySQL ti agbegbe ti a fi sii.

Nitorinaa, olumulo tecmint ko ni awọn igbanilaaye eyikeyi lati ba pẹlu awọn apoti isura data. Gẹgẹbi ọrọ otitọ, olumulo ko le wọle si ikarahun MySQL paapaa.

Lati fun olumulo ni iraye ni kikun si gbogbo awọn apoti isura data, pẹlu awọn tabili, ṣiṣe.

MariaDB [none]> GRANT ALL PRIVILEGES ON * . * TO 'tecmint'@'localhost';

Ninu aṣẹ ti o wa loke, awọn ami akiyesi tọka si ibi ipamọ data ati tabili ni atẹle ti olumulo le wọle. O fun olumulo ni gbogbo awọn ẹtọ lori aaye data - ka, kọ, ṣatunkọ, ati ṣiṣẹ pẹlu ṣiṣe gbogbo awọn iṣẹ ṣiṣe kọja awọn apoti isura data miiran ati awọn tabili pẹlu.

Nitorinaa, a ti fun olumulo ni iraye ni kikun si ibi ipamọ data. Lakoko ti eyi jẹ ọwọ ni ṣiṣe alaye awọn imọran MySQL, kii ṣe igbagbogbo ni a ṣe iṣeduro bi o ṣe le fa eewu aabo si awọn apoti isura data rẹ. O kan ronu ohun ti o le ṣẹlẹ ti agbonaeburuwole kan ba ni ọrọ igbaniwọle olumulo naa. A yoo tẹsiwaju siwaju ki o jiroro bi a ṣe le fi awọn igbanilaaye kan pato ni apakan ti o tẹle.

Nigbati o ba pari ṣiṣe awọn igbanilaaye si olumulo, tun gbe gbogbo awọn anfani pada bi o ti han fun awọn ayipada lati ni ipa.

MariaDB [none]> FLUSH PRIVILEGES

Bii O ṣe le Fifun Awọn igbanilaaye Olumulo Yatọ

Eyi ni idinku ti awọn igbanilaaye ti o ṣee ṣe ti o le fun awọn olumulo:

  • GBOGBO Awọn ẹtọ - Bi a ti rii tẹlẹ, eyi fun olumulo MySQL ni iraye si kikun si ibi ipamọ data kan pato.
  • Ṣẹda - Gba awọn olumulo laaye lati ṣẹda awọn apoti isura data tabi awọn tabili tuntun.
  • DOP - Jeki awọn olumulo lati paarẹ awọn apoti isura data tabi awọn olumulo.
  • INSERT - Gba awọn olumulo laaye lati fi sii awọn ori ila ninu awọn tabili.
  • PIPẸ - Gba awọn olumulo laaye lati pa awọn ori ila rẹ kuro lati awọn tabili.
  • Yan - pẹlu igbanilaaye 'Yan', awọn olumulo ni anfani lati ka awọn akoonu ti tabili kan.
  • Imudojuiwọn - Gba awọn olumulo laaye lati ṣe imudojuiwọn awọn ori ila ninu tabili kan.
  • Aṣayan Ẹbun - Awọn olumulo le funni tabi yọ awọn anfani awọn olumulo miiran kuro.

Lati funni ni igbanilaaye olumulo kan, lo ọna asopọ:

MariaDB [none]> GRANT permission_type ON database_name.table_name TO 'username'@'localhost';

Ni afikun, o le fi awọn igbanilaaye si gbogbo awọn tabili inu iwe data pẹlu aami aami aami kan bi o ti han:

MariaDB [none]> GRANT permission_type ON database_name.* TO 'username'@'localhost';

Fun apẹẹrẹ, lati fi awọn igbanilaaye yan si 'tecmint' olumulo lori gbogbo awọn tabili ti database database, ṣiṣe aṣẹ naa.

MariaDB [none]> GRANT SELECT ON testdb.* TO 'tecmint'@'localhost';

Lẹhinna yọ awọn anfani kuro fun awọn ayipada lati ni ipa.

MariaDB [none]> FLUSH PRIVILEGES;

Ni afikun, o le fi awọn igbanilaaye pupọ lọ ni lilọ nipasẹ yiya sọtọ wọn pẹlu aami idẹsẹ bi o ti han.

MariaDB [none]> GRANT INSERT, UPDATE ON testdb.* TO 'tecmint'@'localhost';

Bii o ṣe le fagile Awọn igbanilaaye MySQL

Lati fagilee awọn igbanilaaye lati ọdọ olumulo kan, lo ọna asopọ:

MariaDB [none]> REVOKE permission_type ON database_name.table_name FROM 'username'@'localhost';

Fun apẹẹrẹ, lati fagile awọn igbanilaaye INSERT lati ọdọ olumulo 'tecmint', ṣiṣe aṣẹ naa.

MariaDB [none]> REVOKE INSERT ON testdb.* FROM tecmint'@'localhost';
MariaDB [none]> FLUSH PRIVILEGES

Lati ni iwoju ni awọn igbanilaaye lọwọlọwọ olumulo kan, ṣiṣẹ:

MariaDB [none]> SHOW GRANTS FOR 'username'@'localhost';

Lati iṣẹjade ti o wa ni isalẹ, a le rii pe a ti fi igbanilaaye INSERT ranṣẹ lati olumulo 'tecmint' ti o fi awọn ẹtọ YATO ati imudojuiwọn nikan silẹ lori ibi ipamọ datadd.

Lati ṣe idanwo jade wiwọ wọle si ikarahun MySQL ni lilo olumulo tuntun, kọkọ jade.

MariaDB [none]> quit;

Lẹhinna buwolu wọle lẹẹkansi.

$ sudo mysql -u tecmint -p

Pese ọrọ igbaniwọle olumulo ati lu Tẹ lati wọle si ikarahun naa.

Lati sọ olumulo kan silẹ, lo aṣẹ DROP, gẹgẹ bi o ṣe le ṣe nigbati o ba n pa data kan.

MariaDB [none]> DROP USER 'username'@'localhost';

O tun le fẹ lati ka awọn nkan ti o ni ibatan MySQL wọnyi:

  • Awọn imọran Wulo lati Laasigbotitusita Awọn aṣiṣe ti o wọpọ ni MySQL
  • Mytop - Ohun elo Wulo fun Ṣiṣayẹwo Iṣẹ MySQL/MariaDB ni Linux
  • Bii o ṣe le Yi MySQL aiyipada/MariaDB Port pada ni Linux
  • Bii o ṣe Tun Tun MySQL tabi MariaDB Gbongbo Ọrọigbaniwọle ni Linux
  • ṣe

Ni ireti, nipasẹ bayi, o le ṣẹda awọn olumulo ninu awọn olupin data MySQL rẹ ati ni itunu fi sọtọ tabi fagile awọn igbanilaaye.