Es rakstu šo tik daudz, lai atgādinātu sev, kā kāds cits tiešām 🙂 Es parasti palaist datu bāzes darbojas uz manu MacBook ko es izmantoju vietām aktīvas attīstības, es pēc tam nodot šīs datu bāzes vairāk nekā uz pieturvietas serveri, kas pēc tam izmanto citi cilvēki komandā un dažreiz klientiem ievades vietnes saturu. Pagājušajā nedēļā es importēto saturu no pieturvietas servera un overwrote manu vietējo datu bāzi, domājot, ka pieturvietas serveris bija visvairāk atjaunināta, bet kā izrādījās, man bija nepareizs!
Par laimi es skrienu Mac OS X's Time Machine backup manā MacBook tāpēc es neredzēju problēmu, kā es varētu tikai atjaunot no tā. Tomēr patiesībā tas nebija tik taisni uz priekšu darīt, tāpēc šeit ir tas, kas man bija jādara beigās, lai atjaunotu šo datu bāzi no mana Time Machine backup.
1. darbība: atrodiet lokālas datu bāzes
Naviģējiet uz MySQL datu bāzu atrašanās vietu. Par manu MySQL instalēt tas ir atrodams / usr / local / mysql bet atkarībā no tā, kā jūs esat uzstādītas MySQL tas varētu būt citur.
Kā jūs, iespējams, redzēt, ka nav vieta, jūs varat vienkārši regulāri apskatīt Finder uz Mac, lai jums ir nepieciešams izmantot "Go to Folder …" opciju Finder izvēlnē "Iet".
Kad esat nokļuvis šajā vietā jūs redzēsiet MySQL datu mapi, kas parādās ar sarkanu bez piekļuves simbols par to, lai jūs nevarat faktiski orientēties taisni uz to, izmantojot meklētāju. Redzot, kā mēs nevaram piekļūt mapi, lai atjaunotu konkrētu datu bāzi, mēs vienkārši atjaunot visu mapi no Time Machine backup vietā.
Step 2: Shutdown your MySQL server Solis 2: Shutdown jūsu MySQL serveris
Ir svarīgi, ka jūs izslēgt savu MySQL servera procesu, pirms turpināt. Kā jūs to izdarītu, ir atkarīgs no tā, kā jums MySQL uzstādīta. Ja instalējāt MySQL no oficiālā uzstādītāja OS X lejupielādēt no MySQL mājas lapā, tad jums var būt sistēmas izvēle, ko var izmantot, lai apturētu to.
Ja esat instalējis MySQL citā veidā, piemēram, self-apkopoti vai caur Mac Ports vai jūs vienkārši vēlaties izmantot Terminal, tad jūs varat pārtraukt to no Terminal vietā. Var izmantot šādu komandu:
sudo mysqladmin shutdown sudo mysqladmin shutdown
Ja jums nav MySQL konfigurēts jūsu ceļš Terminal jums var būt nepieciešams izmantot pilnu ceļu uz mysqladmin komandu:
sudo /usr/local/mysql/bin/mysqladmin shutdown sudo / usr / local / mysql / bin / mysqladmin shutdown
Ceļš uz šiem failiem var atšķirties atkarībā no tā, kā jūs esat instalējis MySQL tātad, ja tas nedarbojas, tad jums būs nepieciešams, lai pārbaudītu pareizo atrašanās vietu. Ņemiet vērā, ka es esmu arī izmanto "sudo", ka komanda, ja jums ir nepieciešams root privilēģijas, lai apturētu MySQL procesu. Lai saņemtu papildu palīdzību, skatiet MySQL versiju MySQL MySQL versiju.
Step 3: Rename your MySQL data folder via the Terminal
Nākamais solis ir pārdēvēt savu MySQL datu mapi uz laiku, lai izvairītos no sadursmēm, atjaunojot datu mapi no Time Machine backup. Vispirms jums ir nepieciešams, lai saņemtu savā MySQL directory:
cd /usr/local/mysql cd / usr / local / mysql
Pēc tam varat uzskaitīt visus failus, lai pārbaudītu, vai atrodaties pareizajā vietā:
ls -al ls-al
Tagad jums vajadzētu redzēt visus failus, tostarp "datu" direktoriju, kurā atrodas datu bāzes. Tagad mēs varam izmantot šādu komandu, lai pārdēvētu datu direktoriju:
sudo mv data-bak sudo mv datu datu bak
Kad tas ir izdarīts, jums vajadzētu redzēt savu direktoriju laimīgi pārdēvēta gan Terminal un Finder logā.
Step 4: Enter Time Machine to restore your MySQL data directory Solis 4: Ievadiet Time Machine atjaunot savu MySQL datu katalogs
Nākamais solis ir ievadīt Time Machine režīmā un atjaunot datu direktoriju no dublējuma. Es esmu pārliecināts, ka jūs droši vien zināt, kā iekļūt Time Machine režīmā, bet pārliecinieties, ka jūs ievadiet, bet koncentrējas uz MySQL Finder logu.
Atgriezieties pietiekami daudz laika, lai noteikti iegūtu vēlamo datu versiju, iezīmējiet datu mapi un noklikšķiniet uz Atjaunot. Jo mēs pārdēvēta datu direktoriju Time Machine vienkārši atjaunot datu direktoriju bez uzvednēm. Tagad jums vajadzētu redzēt gan atjaunoto datu direktoriju un pārdēvēta datu bak direktorijā.
5. darbība: Kopējiet datu bāzi no atjaunotā datu direktorija
Tagad varat kopēt datu bāzi no atjaunotā datu direktorija, tas tiek darīts, izmantojot šādu komandu Termināļa:
sudo cp-R data-bak/my_database_name data/my_database_name sudo cp-R data-bak/my_database_name data/my_database_name
Datu bāze ir faktiski direktoriju, kas satur citus failus, tāpēc jums ir nepieciešams izmantot "-R" karogu rekursīvi kopēt visus šos pāri ar direktoriju pati.
6. darbība: Dzēst atjaunoto datu direktoriju un pārdēvēt datu bak direktoriju
Tagad, kad datu bāze ir atjaunota un kopēta, jūs varat droši izdzēst atjaunoto datu direktoriju, jo tas vairs nav nepieciešams šajā brīdī. Piezīme: Esiet ļoti uzmanīgi, izmantojot "rm" komandu! Sliktas lietas var notikt, ja to izmanto nepareizi!
sudo rm -R dati
Pēc tam varat pārdēvēt datu bak direktoriju atpakaļ uz tā sākotnējo nosaukumu "dati", ņemiet vērā, ka komandai "mv" nav nepieciešams karodziņš "-R":
sudo mv data-bak data sudo mv data-bak data
7. darbība: Pārbaudiet faila atļaujas / īpašumtiesības
Jums var būt nepieciešams pārbaudīt failu atļaujas un īpašumtiesības uz datu bāzi, kas jums ir tikko atjaunota, lai pārliecinātos, ka tā būs pieejama MySQL, kad tā darbojas. Tie var atšķirties atkarībā no jūsu MySQL instalēšanas metodi, bet tie būtu kaut kas līdzīgs šim:
drwx—— 60 _mysql wheel 2040 8 may 12:14 my_database_name drwx: 60 412 janvāris 2040 8 maijs 12:14 my_database_name
Būtībā direktorijs pieder lietotājam "_mysql" un grupā "ritenis". Ja nepieciešams mainīt īpašnieku, tad izmantojiet šādu komandu:
sudo chown -R _mysql data/my_database_name sudo chown-R dati dati/ my_database_name
Step 8: Start up MySQL
Kad tas viss ir izdarīts, jūs varat sākt MySQL vēlreiz, izmantojot vai nu System Preference, ja jums ir, vai caur Terminal komandu:
sudo mysqld_safe & sudo 2
vai ar pilnu ceļu:
sudo /usr/local/mysql/bin/mysqld_safe & sudo / usr/local/mysql/bin/mysqld_safe &
Step 9: Nav solis 9!
Cerams, ka jums tagad vajadzētu būt iespējai piekļūt jūsu nesen atjaunota datu bāzē. Kā jau teicu sākumā, šī ir metode, es izmantoti, lai atjaunotu datu bāzi sevi nesen, var būt citi veidi, kā to izdarīt, bet, cerams, šie pasākumi varētu būt noderīgs, lai kāds cits tādā pašā situācijā.