În primul rând, ce se întâmplă în momentul în care reinstalăm baza de date? Deseori recurgem la aceste metode din motive de securitate ale clienților, iar în cele mai întâlnite cazuri, erorile cu mysql.sock
predomina și ne-am hotărât să facem ceva în privința aceasta. Mai jos vom începe un tutorial, deci fiți foarte atenți, cea mai mică greșeală ar putea fi fatală pentru serverul dumneavoastră.
Crearea unei copii de siguranță Pentru MyISAM:
cd /var/db/ && tar -zcvf backupSQLbtstelecom.tar.gz /var/db/mysql
Pentru InnoDB:
cd /var/backups/ mysqldump -u root -p –opt –all-databases > toatebazeledadate.sql
Dupa aceea, vom aștepta până backup-ul va lua sfârșit. În acest timp, nu apăsați combinațiile de taste de genul: CTRL+”C”, CTRL+”V”, CTRL+”Z”; în caz că nu aveți o bază de date instalată, urmăriți tutorialul de mai jos.
Instalarea portului bazei de date Instalare MySQL: (de obicei o facem noi, dar e mai ok să știți și dumneavoastră) Tastați în SSH:
pkg install mysql55-server
La confirmarea cu Y/N apăsăm y
și dam enter
. După ce s-a procesat complet pachetul, vom intra în /etc/rc.conf
. Cum facem asta? Pai:
ee /etc/rc.conf
Mergem la sfârșitul fișierului și adăugăm:
mysql_enable=„YES”
Apăsăm „ESC”, click pe „LEAVE Editor” și selectăm opțiunea de „Save Changes”. Acum tastăm următoarea funcție:
service mysql-server onestart
Așteptăm să se creeze baza de date standard de test și trecem la treabă.
Montarea bazei de date Mulți dintre voi nu știți cum se montează o bază de date, ok. Avem arhiva cu baza de date? O deschidem cu WinRAR sau cu ce soft aveți dumneavoastră și o despachetăm pe desktop. Intrăm în arhivă și din locația /var/db/mysql
luăm absolut toate fișierele, mai puțin folderele „mysql”, „performance_schema”, „test”. Le urcăm pe server în /var/db/mysql/
și după vom tasta în SSH două comenzi.
chown -R mysql /var/db/mysql && chgrp -R mysql /var/db/mysql
Am instalat baza de date, acum ce facem? Oferim privilegii pentru conectare.
Oferirea de privilegii Scriem în SSH mysql
. După, începem cu alocarea de privilegii globale. Dacă vreți să-l faceți pe IP, vă folosiți de următorul query.
GRANT ALL PRIVILEGES ON *.* TO ‘user’@’ip’ IDENTIFIED BY ‘paroladumneavoastra’ WITH GRANT OPTION;
Un exemplu ar fi:
GRANT ALL PRIVILEGES ON *.* TO ‘testam’@’192.168.100.1’ IDENTIFIED BY ‘paroladumneavoastra’ WITH GRANT OPTION;
Dacă nu doriți să-l faceți pe IP, ne folosim de următorul query:
GRANT ALL PRIVILEGES ON *.* TO ‘testam’@’%’ IDENTIFIED BY ‘paroladumneavoastra’ WITH GRANT OPTION;
Acum ce facem? Pai, din motive de securitate, recomandăm crearea unui user special doar pentru site, precum și folosirea query-ului pe IP.
ATENȚIE! Parolele trebuie schimbate! Nu le folosiți pe cele date în exemplu!
Alocare privilegii user website
GRANT SELECT,INSERT,UPDATE,DELETE ON *.* TO ‘web’@’localhost’ IDENTIFIED BY ‘paroladumneavoastra’;
În cazul în care doriți remote mysql, va trebui să modificați localhost
cu adresa IP web a respectivului provider.
Nume utilizator: web
Parola: paroladumneavoastra
După aceea, ce trebuie să facem? Pai, trebuie să alocăm serverul de Metin să se poată conecta la baza de date. Întrebarea dumneavoastră în momentul de față este, „CUM?!” Ei bine, urmăriți cu pași atenți ce vă voi comunica mai jos. Pentru a putea face rost de userii de MySQL local ai Metinului, intrăm în locația canalelor, acolo unde se află și syserr
. Dăm edit la fișierul „CONFIG” și aici vom găsi câteva linii de genul:
PLAYER_SQL: localhost local btstelecom player
COMMON_SQL: localhost local btstelecom common
LOG_SQL: localhost local btstelecom log
Ei bine, vă întrebați ce sunt acestea? Prin aceste informații, serverul de Metin reușește să se conecteze la baza de date.
Conectarea la baza de date locală Mai departe vom tasta din nou în SSH:
mysql
Noi vă oferim un exemplu de query mai jos, care se folosește de informațiile primite din CONFIG.
GRANT ALL PRIVILEGES ON *.* TO ‘local’@’localhost’ IDENTIFIED BY ‘paroladumneavoastra’ WITH GRANT OPTION;
Dacă în fișierul config aveți alte date față de cele de mai sus, sunteți rugați să completați corespunzător și cu atenție query-ul de mai sus. În momentul de față, serverul ar trebui să aibă acces. Cam asta ar trebui să fie.