Portál AbcLinuxu, 10. května 2025 13:55

Dotaz: SQL - nastavení uživatelů

25.6.2005 17:40 BlackShark | skóre: 15 | blog: windows
SQL - nastavení uživatelů
Přečteno: 122×
Odpovědět | Admin
Tak se mi podařilo zprovoznit MySQL. Ale mám problém s pravy a s uživateli. V počítači je uživatel jménem blackshark. Počítač se jmenuje PC02. V MySQL jsem vytvořil Databázi CNI a chtěl jsem ji zpřístupnit uživateli blackshark z lokálního počítače, tak aby mohl databázi upravovat. Takže jsem zadal toto :
USE mysql;
INSERT INTO host VALUES("localhost","CNI","Y" .... );
INSERT INTO user VALUES("localhost",blackshark",PASSWORD("heslo"),"Y","Y"....);
INSERT INTO db VALUES("localhost","CNI","blackshark","Y",....);
Všechny tyto příkazy proběhly v pořádku a v tabulkách jsou zapsány ( ověřeno : SELECT * FROM db ). Ovšem tento uživatel se nemůže přihlásit .... toto je výstup z terminálu.
[blackshark@pc02 ~]$ /usr/bin/mysql -p
Enter password:heslo
ERROR 1045 (28000): Access denied for user  blackshark'@'localhost' (using password: YES)
Co jsem udělal zase blbě, že to nefunguje ?
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

25.6.2005 18:00 #Tom
Rozbalit Rozbalit vše Re: SQL - nastavení uživatelů
Odpovědět | | Sbalit | Link | Blokovat | Admin
Postup je skutečně přibližně následující:
$ mysql -u root -p
Enter password: bla bla

use mysql;
insert into user set Host='localhost',User='NewDB',Password=password('NewDB-password');
insert into db set Host='localhost',Db='NewDB',user='NewDB',Select_priv='Y',Insert_priv='Y',Update_priv='Y',Delete_priv='Y',Create_priv='Y',Drop_priv='Y',Index_priv='Y',Alter_priv='Y';
flush privileges;
Je potřeba nakonec přidat flush privileges, a nebo aspoň restartovat SQL server.
25.6.2005 18:56 BlackShark | skóre: 15 | blog: windows
Rozbalit Rozbalit vše Re: SQL - nastavení uživatelů
Díky. To bylo to co jsme nevěděl a v chytré knížce se neobtěžovali to sdělit :-). Nevím sice proč, ale jen flush privileges nepomohlo. Ale když jsem server restartoval, už to funguje. Takže mockrát děkuji ...
29.6.2005 18:25 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: SQL - nastavení uživatelů
No pokud v chytré knížce radili tohle, tak byla pěkně blbá. Na oprávnění jsou jiné SQL příkazy, jak už tu ostatně někdo poznamenal.
29.6.2005 18:22 Hříbek
Rozbalit Rozbalit vše Re: SQL - nastavení uživatelů
Odpovědět | | Sbalit | Link | Blokovat | Admin
Měl by jste používat přikazy GRANT / REVOKE
GRANT = zadani
REVOKE = zruseni 
grant ALL PRIVILEGES on cni.* to blackshark@localhost identified by 'heslo';

Pozor na povoleni: "ALL PRIVILEGES" misto toho muzete vypsat co chcete povolit
ALL PRIVILEGES      FILE                RELOAD
ALTER               INDEX               SELECT
CREATE              INSERT              SHUTDOWN
DELETE              PROCESS             UPDATE
DROP                REFERENCES          USAGE
29.6.2005 19:06 BlackShark | skóre: 15 | blog: windows
Rozbalit Rozbalit vše Re: SQL - nastavení uživatelů
Díky, tohle vypadá jako nejlepší způsob :-)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.