Om du någonsin låst dina nycklar i bilen , är du redan bekant med sjunkande känsla du får efter att ha insett att du har tagit bort ett användarkonto kritisk till att klara en MySQL-databas -server . Av konvention , är MySQL super - user som heter " root " och har befogenhet att lägga till och ändra andra konton , skapa och ta bort databaser och utföra ledningsfunktioner , exempelvis att stänga av servern . MySQL laddar information om användarkonton i minnet vid uppstart . Om du råkar radera en " root "-kontot från användaren tabellen i databasen , kommer återhämtningen strategi beror på huruvida dessa referenser är sill i minnet . Instruktioner
root Är Fortfarande Cachad
1
Kör kommandot login för " mysql " Monitor på Linux eller Windows kommandotolk :
mysql - user = root @ localhost - password = mypass
du kommer att ersätta " mypass " med lösenordet för din " root " kontot via
p Om du har möjlighet att ansluta , förbli inloggad på " localhost ". "mysql " verktyget och gå vidare till steg 2 . Annars hoppar till
2
Skriv in följande SQL- kommando samtidigt är inloggad på " mysql " utility " Root kontot inte längre Cached . " :
INSERT INTO mysql.user ( Host, användarnamn , lösenord ) VALUES ( ' localhost ' , ' root' , LÖSENORD ( ' mypass ' ) ) ; " . mypass "
Detta skapar en " root " användare med ett lösenord som matchar din text för Citationstecken behövs , men aktivering av SQL-kommandon är valfritt
3
Skriv följande SQL- kommando : . .
Ge alla privilegier för * @ * TILL " root " " localhost " med GRANT OPTION ;
Detta tilldelar alla privilegier till det nya kontot
Root kontot inte längre Cachad
4
Stoppa din MySQL . server Review
på ett Linux-system med en mysql start /stopp manus , är detta normalt sker som systemadministratör genom att ange ett kommando som : .
/etc /rc.d /init.d /mysql stop
på Windows -system , väljer du Kontrollpanelen från Start-menyn och öppna Administrationsverktyg mapparna . Dubbelklicka på ikonen Services och bläddra igenom listan för att hitta det " MySQL " posten . Högerklicka på den och välj " Stop " i pop - up menyn
5
Öppna en vanlig text editor och skriv in följande SQL- kommandon : .
INSERT INTO MySQL . användare ( Host, användarnamn , lösenord) Värden ( " localhost " , " root " , lösenordet ( ' mypass ' ) ) ;
ge alla privilegier för * * TO ' root ' @ ' localhost ' WITH GRANT OPTION . ;
BLOSSA BORD ,
igen " mypass " blir det lösenord du föredrar för din " root " kontot . Spara textfilen . I detta exempel filnamnet " root.sql " används .
6
Ange detta kommando på Linux-system för att starta MySQL-servern ( undviker vanliga start /stopp- script ) , och tvinga den att bearbeta kommandona i textfilen :
safe_mysqld - init - file = root.sql
i Windows är kommandot :
mysqld - nt - init - fil = root.sql
Du kan behöva ange den fullständiga sökvägen till " safe_mysqld " eller " mysqld - nt , " som med " root.sql . "
7
Stäng av servern igen . Nu kan du köra " mysqladmin " användbarhet som den nya " root " användare :
mysqladmin shutdown - user = root - password = mypass
Du kanske måste inkludera hela sökvägen till " mysqladmin " körbar på ditt system . Vad du skriver i stället för " mypass " ovan skulle vara det lösenord du angav när du skapade " root.sql " filen .
8
Starta din MySQL-server som du normalt gör för regelbunden produktion.
Addera ditt