Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 13837|Odgovoriti: 0

[Vir] Žalostna zgodovina posodobitve Linuxa MySQL 8.0

[Kopiraj povezavo]
Objavljeno na 10. 01. 2019 14:15:36 | | | |
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;





Prejšnji:YouCore Thinking Training: Reševanje problemov z ogrodji
Naslednji:Gradiva za elektronsko različico javne uprave
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com