ഞാൻ ഈ എഴുതുന്നത് മറ്റാരെയെങ്കിലും പോലെ എന്നെത്തന്നെ 🙂 ഞാൻ സാധാരണയായി എന്റെ മാക്ബുക്കിൽ പ്രവർത്തിക്കുന്ന ഡാറ്റാബേസുകൾ പ്രവർത്തിപ്പിക്കുന്നു, സജീവ വികസനസൈറ്റുകളിൽ ഞാൻ ഉപയോഗിക്കുന്ന ഡാറ്റാബേസുകൾ ഞാൻ പിന്നീട് സ്റ്റേജിംഗ് സെർവറിലേക്ക് മാറ്റുന്നു, തുടർന്ന് ടീമിലെ മറ്റ് ആളുകളും ചിലപ്പോൾ ക്ലയന്റുകളും സൈറ്റ് ഉള്ളടക്കം ഇൻപുട്ട് ചെയ്യുന്നു. കഴിഞ്ഞ ആഴ്ച സ്റ്റേജിംഗ് സെർവറിൽ നിന്ന് ഞാൻ ഉള്ളടക്കം ഇമ്പോർട്ട് ചെയ്യുകയും സ്റ്റേജിംഗ് സെർവർ ഏറ്റവും പുതിയതാണെന്ന് കരുതി എന്റെ പ്രാദേശിക ഡാറ്റാബേസ് ഓവർഎഴുതി, എന്നാൽ അത് തെളിഞ്ഞപ്പോൾ ഞാൻ തെറ്റായിരുന്നു!
ഭാഗ്യവശാൽ ഞാൻ മാക് ബുക്കിൽ മാക് ഒഎസ് എക്സ് ടൈം മെഷീൻ ബാക്കപ്പ് പ്രവർത്തിപ്പിക്കുന്നു, അതുകൊണ്ട് അതിൽ നിന്ന് വീണ്ടെടുക്കാൻ കഴിയുന്നതിനാൽ ഒരു പ്രശ്നം ഞാൻ കണ്ടില്ല. എന്നിരുന്നാലും, യഥാർത്ഥത്തിൽ അത് അത്ര നേരെയല്ല, അതിനാൽ എന്റെ ടൈം മെഷീൻ ബാക്കപ്പിൽ നിന്ന് ഈ ഡാറ്റാബേസ് പുനഃസ്ഥാപിക്കാൻ അവസാനം ഞാൻ ചെയ്യേണ്ടത് ഇതാണ്.
ഘട്ടം 1: നിങ്ങളുടെ പ്രാദേശിക ഡാറ്റാബേസുകൾ കണ്ടെത്തുക
നിങ്ങളുടെ MySQL ഡാറ്റാബേസുകളുടെ ലൊക്കേഷനിലേക്ക് നാവിഗേറ്റ് ചെയ്യുക. മൈഎസ്ക്യുഎൽ ഇൻസ്റ്റാൾ ചെയ്യുന്നതിന് ഇത് /usr/local/mysql-ൽ കാണപ്പെടുന്നു, എന്നാൽ നിങ്ങൾ MySQL ഇൻസ്റ്റാൾ ചെയ്തരീതിയെ അടിസ്ഥാനമാക്കി, ഇത് മറ്റെവിടെയെങ്കിലും ആയിരിക്കാം.
നിങ്ങൾ മിക്കവാറും അത് ഒരു ലൊക്കേഷൻ അല്ല എന്ന് കാണും പോലെ, നിങ്ങൾ മാക്-ൽ ഫൈൻഡർ പതിവായി കാണാൻ കഴിയും, അതിനാൽ നിങ്ങൾ 'ഫോൾഡറിലേക്ക് പോകുക…' ഉപയോഗിക്കേണ്ടതുണ്ട് option in the finder in the 'Go' എന്ന മെനുവിനുള്ളിൽ.
ആ ലൊക്കേഷനിൽ എത്തിക്കഴിഞ്ഞാൽ, ഒരു ചുവന്ന നോ-ആക്സസ് ചിഹ്നമുള്ള MySQL ഡാറ്റ ഫോൾഡർ നിങ്ങൾക്ക് കാണാം, അതിനാൽ നിങ്ങൾക്ക് യഥാർത്ഥത്തിൽ ഫൈൻഡറിലൂടെ നേരിട്ട് നാവിഗേറ്റ് ചെയ്യാൻ കഴിയില്ല. ഒരു നിർദ്ദിഷ്ട ഡാറ്റാബേസ് വീണ്ടെടുക്കാൻ ഫോൾഡറിലേക്ക് ആക്സസ് ചെയ്യാൻ കഴിയില്ല എന്നതിനാൽ, പകരം ടൈം മെഷീൻ ബാക്കപ്പിൽ നിന്ന് മുഴുവൻ ഫോൾഡറും വീണ്ടെടുക്കാം.
ഘട്ടം 2: നിങ്ങളുടെ MySQL സെർവർ ഷട്ട്ഡൗൺ ചെയ്യുക
നിങ്ങൾ തുടരുന്നതിന് മുമ്പ് MySQL സെർവർ പ്രക്രിയ നിങ്ങൾ അവസാനിപ്പിക്കേണ്ടത് പ്രധാനമാണ്. നിങ്ങൾ എങ്ങനെ യാണ് ഇത് ചെയ്യുന്നത് എന്നതിനെ ആശ്രയിച്ചിരിക്കും MySQL ഇൻസ്റ്റാൾ ചെയ്തത് എന്നതിനെ ആശ്രയിച്ചിരിക്കും. MySQL വെബ് സൈറ്റിൽ നിന്ന് ഡൗൺലോഡ് ചെയ്ത OS X-നായുള്ള ഔദ്യോഗിക ഇൻസ്റ്റാളറിൽ നിന്ന് നിങ്ങൾ MySQL ഇൻസ്റ്റാൾ ചെയ്തിട്ടുണ്ടെങ്കിൽ, അത് നിർത്താൻ നിങ്ങൾക്ക് ഉപയോഗിക്കാവുന്ന ഒരു സിസ്റ്റം മുൻഗണന നിങ്ങൾക്ക് ലഭിച്ചേക്കാം.
സ്വയം കമ്പൈൽ ചെയ്തതോ മാക് പോർട്ടുകൾ വഴിയോ നിങ്ങൾ മൈഎസ്ക്യുഎൽ ഇൻസ്റ്റാൾ ചെയ്തിട്ടുണ്ടെങ്കിൽ അല്ലെങ്കിൽ ടെർമിനൽ ഉപയോഗിക്കാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെങ്കിൽ, പകരം നിങ്ങൾക്ക് ടെർമിനലിൽ നിന്ന് അത് നിർത്താവുന്നതാണ്. ഇനിപ്പറയുന്ന കമാൻഡ് ഉപയോഗിക്കാം:
sudo mysqladmin ഷട്ട്ഡൗൺ
ടെർമിനലിൽ നിങ്ങളുടെ പാതയിൽ MySQL കോൺഫിഗർ ചെയ്തിട്ടില്ലെങ്കിൽ, mysqladmin ആജ്ഞയിലേക്കുള്ള മുഴുവൻ പാതയും നിങ്ങൾ ഉപയോഗിക്കേണ്ടി വന്നേക്കാം:
sudo /usr/local/mysql/bin/mysqladmin ഷട്ട്ഡൗൺ
നിങ്ങൾ MySQL ഇൻസ്റ്റാൾ ചെയ്തരീതിഅനുസരിച്ച് ആ ഫയലുകളിലേക്കുള്ള പാത വ്യത്യാസപ്പെട്ടേക്കാം, അതിനാൽ അത് പ്രവർത്തിക്കുന്നില്ലെങ്കിൽ ശരിയായ സ്ഥാനം നിങ്ങൾ പരിശോധിക്കേണ്ടതുണ്ട്. MySQL പ്രക്രിയ നിർത്താൻ നിങ്ങൾക്ക് റൂട്ട് ആനുകൂല്യങ്ങൾ ആവശ്യമാണെങ്കിൽ ഞാൻ ആ കമാൻഡിൽ 'sudo' ഉപയോഗിച്ചിട്ടുണ്ട് എന്നകാര്യം ശ്രദ്ധിക്കുക. കൂടുതൽ സഹായത്തിനായി MySQL-ന്റെ നിങ്ങളുടെ പതിപ്പിനായി MySQL ഡോക്യുമെന്റേഷൻ പരിശോധിക്കുക.
ഘട്ടം 3: ടെര് മിനലിലൂടെ നിങ്ങളുടെ MySQL ഡാറ്റ ഫോള് ഡറിന്റെ പേരു് മാറ്റുക
അടുത്ത ഘട്ടം ടൈം മെഷീൻ ബാക്കപ്പിൽ നിന്ന് ഡാറ്റ ഫോൾഡർ വീണ്ടെടുക്കുമ്പോൾ എന്തെങ്കിലും സംഘട്ടനങ്ങൾ ഒഴിവാക്കുന്നതിന് നിങ്ങളുടെ MySQL ഡാറ്റ ഫോൾഡർ താൽക്കാലികമായി പുനർനാമകരണം ചെയ്യുക എന്നതാണ്. ആദ്യം നിങ്ങളുടെ MySQL ഡയറക്ടറിയിലേക്ക് കടക്കേണ്ടതുണ്ട്:
cd /usr/local/mysql
നിങ്ങൾ ശരിയായ സ്ഥലത്താണ് എന്ന് പരിശോധിക്കുന്നതിന് നിങ്ങൾക്ക് എല്ലാ ഫയലുകളും ലിസ്റ്റ് ചെയ്യാവുന്നതാണ്:
ls -al
ഡാറ്റാബേസുകൾ സ്ഥിതി ചെയ്യുന്ന 'ഡാറ്റ' ഡയറക്ടറി ഉൾപ്പെടെ എല്ലാ ഫയലുകളും ഇപ്പോൾ നിങ്ങൾ കാണണം. ഡേറ്റാ ഡയറക്ടറിയുടെ പേരു് മാറ്റുന്നതിനായി ഇനിപ്പറയുന്ന കമാൻഡ് ഉപയോഗിക്കാം:
sudo mv ഡാറ്റ-bak
അത് കഴിഞ്ഞാൽ ടെർമിനലിലും ഫൈൻഡറിലും നിങ്ങളുടെ ഡയറക്ടറി സന്തോഷത്തോടെ പുനർനാമകരണം ചെയ്യുന്നത് കാണണം.
ഘട്ടം 4: നിങ്ങളുടെ MySQL ഡാറ്റ ഡയറക്ടറി വീണ്ടെടുക്കുന്നതിന് ടൈം മെഷീൻ നൽകുക
അടുത്ത ഘട്ടം ടൈം മെഷീൻ മോഡ് എന്റർ ചെയ്യുകയും ബാക്കപ്പിൽ നിന്ന് ഡാറ്റ ഡയറക്ടറി പുനഃസ്ഥാപിക്കുകയും ചെയ്യുക എന്നതാണ്. ടൈം മെഷീൻ മോഡിൽ എങ്ങനെ പ്രവേശിക്കണമെന്ന് നിങ്ങൾക്ക് അറിയാം എന്ന് എനിക്കുറപ്പാണ്, എന്നാൽ MySQL ഫൈൻഡർ വിൻഡോയിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുമ്പോൾ നിങ്ങൾ എന്റർ ചെയ്യുന്നുവെന്ന് ഉറപ്പാക്കുക.
നിങ്ങൾ ആഗ്രഹിക്കുന്ന ഡാറ്റയുടെ പതിപ്പ് തീർച്ചയായും നിങ്ങൾക്ക് ലഭിക്കുന്നതിന് മതിയായ തുക യഥാസമയം തിരികെ പോവുക, ഡാറ്റ ഫോൾഡർ ഹൈലൈറ്റ് ചെയ്യുക, വീണ്ടെടുക്കുക ക്ലിക്കുചെയ്യുക. കാരണം ഞങ്ങൾ ഡാറ്റാ ഡയറക്ടറി യുടെ പേര് മാറ്റിയതിനാൽ, യാതൊരു നിർദ്ദേശങ്ങളും ഇല്ലാതെ തന്നെ ഡാറ്റ ഡയറക്ടറി വീണ്ടെടുക്കാൻ ടൈം മെഷീൻ ശ്രമിക്കും. നിങ്ങൾ ഇപ്പോൾ പുനഃസ്ഥാപിച്ച ഡാറ്റാ ഡയറക്ടറിയും പേര് മാറ്റിയ ഡാറ്റാ-ബാക്ക് ഡയറക്ടറിയും കാണണം.
ഘട്ടം 5: പുനഃസ്ഥാപിച്ച ഡാറ്റാ ഡയറക്ടറിയിൽ നിന്ന് ഡാറ്റാബേസ് പകർത്തുക
നിങ്ങൾക്ക് ഇപ്പോൾ പുനഃസ്ഥാപിച്ച ഡാറ്റാ ഡയറക്ടറിയിൽ നിന്ന് ഡാറ്റാബേസ് പകർത്താൻ കഴിയും, ഇനിപ്പറയുന്ന ടെർമിനൽ കമാൻഡ് വഴി ഇത് ചെയ്യുന്നു:
sudo cp -R data-bak/my_database_name data/my_database_name
ഡാറ്റാബേസ് യഥാർത്ഥത്തിൽ മറ്റ് ഫയലുകൾ അടങ്ങുന്ന ഒരു ഡയറക്ടറിയാണ്, അതിനാൽ ഡയറക്ടറിയിൽ തന്നെ ഈ എല്ലാ ഫയലുകളും പകർത്താൻ '-R' ഫ്ലാഗ് ഉപയോഗിക്കേണ്ടതുണ്ട്.
ഘട്ടം 6: പുനഃസ്ഥാപിച്ച ഡാറ്റാ ഡയറക്ടറി ഇല്ലാതാക്കുക, ഡാറ്റാ-ബാക് ഡയറക്ടറിയുടെ പേരു് മാറ്റുക
ഇപ്പോൾ ഡാറ്റാബേസ് വീണ്ടെടുത്ത് പകർത്തപ്പെട്ടതിനാൽ, ഈ ഘട്ടത്തിൽ ആവശ്യമില്ലാത്തതിനാൽ നിങ്ങൾക്ക് സുരക്ഷിതമായി വീണ്ടെടുക്കപ്പെട്ട ഡാറ്റാ ഡയറക്ടറി ഇല്ലാതാക്കാവുന്നതാണ്. കുറിപ്പ്: 'rm' കമാൻഡ് ഉപയോഗിച്ച് വളരെ സൂക്ഷിച്ച്! തെറ്റായ രീതിയിൽ ഉപയോഗിച്ചാൽ മോശം കാര്യങ്ങൾ സംഭവിക്കാം!
sudo rm -R ഡാറ്റ
തുടർന്ന് നിങ്ങൾക്ക് ഡാറ്റ-ബാക്ക് ഡയറക്ടറിയുടെ യഥാർത്ഥ പേര് 'ഡാറ്റ' ആയി പുനർനാമകരണം ചെയ്യാം, 'mv' ആജ്ഞ '-R' ഫ്ലാഗ് ആവശ്യമില്ല എന്ന് ശ്രദ്ധിക്കുക:
sudo mv ഡാറ്റ-ബാക് ഡാറ്റ
ഘട്ടം 7: ഫയലിന്റെ അനുമതികള് / ഉടമസ്ഥാവകാശം പരിശോധിക്കുക
നിങ്ങൾ ഇപ്പോൾ പുനഃസ്ഥാപിച്ച ഡാറ്റാബേസിന്റെ അനുമതികളും ഉടമസ്ഥാവകാശവും നിങ്ങൾ പരിശോധിക്കേണ്ടതുണ്ട്, അത് പ്രവർത്തിക്കുന്ന സമയത്ത് MySQL ആക്സസ് ചെയ്യുമെന്ന് ഉറപ്പാക്കാൻ. നിങ്ങളുടെ MySQL ഇൻസ്റ്റാൾ രീതിഅനുസരിച്ച് ഇവ വ്യത്യാസപ്പെട്ടിരിക്കാം, എന്നാൽ ഇവ ഇങ്ങനെയായിരിക്കണം:
drwx—— 60 _mysql ചക്രം 2040 8 മേയ് 12:14 my_database_name
അടിസ്ഥാനപരമായി ഡയറക്ടറി ഉപയോക്താവിന്റെ ഉടമസ്ഥതയിലുള്ളതാണ് _mysql' എന്ന ഗ്രൂപ്പിലും 'വീൽ' എന്ന ഗ്രൂപ്പിലും. നിങ്ങൾക്ക് ഉടമസ്ഥനെ മാറ്റേണ്ടതുണ്ടെങ്കിൽ, ഇനിപ്പറയുന്ന കമാൻഡ് ഉപയോഗിക്കുക:
sudo chown -R _mysql data/my_database_name
ഘട്ടം 8: മൈഎസ്ക്യുഎൽ ആരംഭിക്കുക
എല്ലാം ചെയ്തുകഴിഞ്ഞാൽ, നിങ്ങൾക്ക് സിസ്റ്റം മുൻഗണന ഉപയോഗിച്ചോ ടെർമിനൽ കമാൻഡ് വഴിയോ വീണ്ടും MySQL ആരംഭിക്കാവുന്നതാണ്:
sudo mysqld_safe &
അല്ലെങ്കില് പൂര് ണമായ വഴിയുമായി.
sudo /usr/local/mysql/bin/mysqld_safe &
ഘട്ടം 9: സ്റ്റെപ്പ് 9 ഇല്ല!
പുതുതായി പുനഃസ്ഥാപിച്ച ഡാറ്റാബേസ് ആക്സസ് ചെയ്യാൻ നിങ്ങൾക്ക് ഇപ്പോൾ കഴിയണം എന്ന് പ്രതീക്ഷിക്കുന്നു. ഞാൻ തുടക്കത്തിൽ പറഞ്ഞതുപോലെ, ഈ രീതി യാണ് ഞാൻ ഈയടുത്ത് തന്നെ ഒരു ഡാറ്റാബേസ് പുനഃസ്ഥാപിക്കാൻ ഉപയോഗിച്ച രീതി, അത് ചെയ്യാൻ മറ്റ് മാർഗ്ഗങ്ങൾ ഉണ്ടായേക്കാം, എന്നാൽ ഈ നടപടികൾ ഈ സാഹചര്യത്തിൽ മറ്റാർക്കെങ്കിലും പ്രയോജനമായേക്കാം എന്ന് പ്രതീക്ഷിക്കാം.