În primul rând, ce se întâmplă în momentul în care reinstalăm baza de date? Deseori recurgem la metodele acestea din motive de securitate ale clienților, iar în cele mai întâlnite cazuri, erorile cu mysql.sock predomină ș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ă serverului dumneavoastră. Prima dată ne vom asigura că avem o copie de siguranță a bazei de date. (Doar în caz că avem deja o problemă cu baza de date și nu știm s-o reparăm)
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
După 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ă) Tastăm în SSH:
pkg install mysql55-server
La confirmarea cu Y/N apăsăm y și dăm Enter. După ce s-a procesat complet pachetul, vom intra în /etc/rc.conf. Cum facem asta? Păi: 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 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/, 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? Păi din motive de securitate, recomandăm crearea unui user special doar pentru site, cât ș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? Păi, trebuie să alocăm serverul de metin să se poată conecta la baza de date. Întrebarea dumneavoastră în momentul de față este, „CUM?!” E 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”, iar 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
E 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 ce 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.