Ta članek temelji na osebnih izkušnjah, vključno s celotnim postopkom nadgradnje MySQL 8.0 ter težavami, na katere smo se srečali in rešitvami vmes.
Dragoceni dokumenti, ki se sklicujejo skozi celoten postopek, so označeni.
Dobrodošli v zbirki, dobrodošli v naprej, a upam, da bom navedel virPrijava do hiperpovezave je vidna.,IzvirnikNi lahko
Najprej prenesite in namestite zahtevani namestitveni paket ter izberite glede na svoje potrebe (tukaj je rhel7.4, 64-bit kot primer)
Prijava do hiperpovezave je vidna.
Odpri paket katrana
Tar -zxvf mysql-8.0.4-0.1.rc.el7.x86_64.rpm-bundle.tar
Napaka
gzip: stdin: not in gzipformat
tar: Child returnedstatus 1
tar: Error is notrecoverable: exiting now
Rešitev:
Odstranite parameter z in uporabite tar -xvf za normalno dekompresijo
Analiza vzrokov:
1. Ime stisnjene datoteke je umetno spremenjeno, na primer: izvirna kompresija ni .gz, pripona je umetno spremenjena, nato se pripona lahko odstrani in nato dekompresira, na primer: datoteka FMIS2600DMP.tar.gz, odstranite pripono gz in nato uporabite tar -xvf za dekompresijo
2. Parameter -z je pravzaprav program za pritiskanje ali dekompresijo, ki kliče bz2, in odstranitev tega parametra lahko prav tako prepreči ta problem
Namestitev programskih paketov
Preprosto sledite naslednjemu, sicer bo veliko težav z odvisnostjo od paketa. Ne bom navajal konkretnih težav, srečal sem jih kar precej
Vse rpm pakete postavite v isto prazno mapo, razen mysql-community-server-miniaml-*, ker bo to konfliktno med strežnikom in odjemalcem,
Nato uporabite naslednji ukaz za namestitev (priporočam, da vse namestite neposredno, ni potrebe po omejevanju, kot sem dal spodnji povezavi, ker bi potem prišlo do konfliktov, preprosto namestite vse 9 rpm pakete z yum, priporočljivo je namestiti z yum, ne uporabljajte ukazov rpm, ker yum samodejno zazna in reši konflikte in odvisnosti med namestitvenimi paketi).
sudoyum install mysql-community-*
Referenca za namestitev:https://dev.mysql.com/doc/refman ... stallation-rpm.html
Ne morem se povezati z lokalnim MySQL strežnikom preko socket '/var/lib/mysql/mysql.sock
Koraki rešitve:
1 Systemctl stop mysqld (stop service)
2 rm -fr /var/lib/mysql/* (izbriši vse datoteke pod /var/lib/mysql)
3 rm /var/lock/subsys/mysqld (izbriši datoteko zaklepa)
4 killall mysqld (kill all mysqld processes)
5 systemctl zaženi mysqld (Zaženi storitev mysql.) )
Referenčne povezave:https://www.cnblogs.com/okstill/p/5667138.html
Root uporabnik se prijavi v bazo brez gesla
Dostop zavrnjen za uporabnika 'root'@'localhost' (z uporabo gesla: DA)
Metoda:
Preskočite začasno glavno geslo in se prijavite v bazo podatkov, da spremenite geslo
1. Zaprete storitev MySQL:
Systemctl stop mysqld
2. Nastavite okoljsko spremenljivko tako, da preskoči preverjanje dovoljenj
systemctlset-environment MYSQLD_OPTS="--skip-grant-tables"
3. Ponovni zagon storitve MySQL
SystemCTL Start mysqld
4. Prijavite se kot root
mysql -u koren
Na tej točki se lahko uspešno prijavite
5. Nastavite korensko geslo
UPDATE mysql.userSET authentication_string= PASSWORD('Root@123') KJER User = 'root';
Po MySQL 5.6 je bila moč gesel okrepljena z izdajo validate_password vtičnikov (ki so na nekaterih mestih že obstajali, zdaj pa so obvezni). Podprite zahteve glede moči gesla. , preveri konfiguracijske zahteve vsakega parametra validate_password z naslednjim ukazom,
Wtičnik za revizijo moči gesel MySQL: validate_password navodila za uporabohttp://www.xuchanggang.cn/archives/1033.html
PRIKAŽI SPREMENLJIVKE, KOT SO 'validate_password%';
Parametre lahko nastavite z uporabo naslednjih ukazov, najpomembnejši parametri za zahteve glede moči gesla pa so naslednje politike
nastavi global validate_password.policy=LOW;
Ponovna okrepitev
UPDATEmysql.user NASTAVI authentication_string = 'root123', KJER User = 'root';
Torej je zadnji ukaz za spremembo gesla
UPDATEmysql.user NASTAVI authentication_string = 'root123', KJER User = 'root';
6. Ustavite storitev mysql
Systemctl stopmysqld
7. Prekliči prej nastavljeno možnost za preskok preverjanja dovoljenj
SystemCTL MYSQLD_OPTS brez okolja
8. Zaženi mysql normalno
SystemCTL Start mysqld
9. Prijavite se z novim geslom, ki ste ga nastavili prej
mysql -u koren -p
Težave s prijavo v referenco:http://blog.csdn.net/u014306472/article/details/78160427
Preverite privzeto geslo
grep "začasno geslo"/var/log/mysqld.log
Tukaj je kopija zgornjega ukaza, zapisana v enem kosu, tako da se kopija izvede le enkrat, ne trikrat
Preden se ponovno prijavite, nastavite dovoljenje za preskok, da preverite systemctl stop mysqld. systemctl set-environmentMYSQLD_OPTS="--skip-grant-tables"; SystemCTL Start mysqld Ponastavitev Ko je nastavitev zaključena, odgovorite na preverjanje dovoljenj systemctl stopmysqld. SystemCTL MYSQLD_OPTS brez okolja; systemCTL zaženi mysqld;
|