სტატიების დირექტორია
MySQL ცხრილის შეცდომა მონიშნულია, როგორც ავარიული და ბოლო (ავტომატური?) - გადაწყვეტა.
ამ სტატიაში გაგაცნობთ ჩვენს რჩევებს მაგიდის შეკეთებისასError: Table \'./db_name/table_name\' is marked as crashed and last (automatic?) repair failedგამოსავალი.
MySQL ცხრილთან დაკავშირებით პრობლემაა, რასაც შემდეგი შეტყობინება მიუთითებს: ▼
Error: Table './db_name/table_name' is marked as crashed and last (automatic?) repair failed
mysql_upgrade ასრულებს შემდეგ ბრძანებებს ცხრილების შესამოწმებლად და შესაკეთებლად და სისტემის ცხრილების განახლებისთვის ▼
mysqlcheck --all-databases --check-upgrade --auto-repair
- ოპერაციის წარუმატებლობა შეუქცევადია და მონაცემთა ბაზა უნდა შეჩერდეს:
service monit stop
service mysqld stop
- შეიყვანეთ დირექტორია, სადაც მდებარეობს მონაცემთა ბაზა:
cd /var/lib/mysql/db_name/
შენიშვნა: mysql სერვისი უნდა შეწყდეს ოპერაციის შეკეთებამდე.
- ერთი მონაცემთა ფურცლის შეკეთება:
myisamchk -r tablename.MYI
- შეასწორეთ ყველა მონაცემთა ფურცელი:
myisamchk -r *.MYI
- Უსაფრთხო რეჟიმი:
myisamchk -r -v -o <table_name>
- ძალის რეჟიმი:
myisamchk -r -v -f <table_name>
myisamchk გამოყენება
შენიშვნა: myisamchk-ის გამოყენებამდე დარწმუნდით, რომ mysqld არ წვდება შესამოწმებელ ცხრილს.ჯობია შეაჩერო mysqld.
- განახორციელა
myisamchk –update-state -s *.myi
და შეამოწმეთ რომელ ინდექსის ფაილებს აქვთ პრობლემები (შეიძლება დიდი დრო დასჭირდეს).
- განახლების მდგომარეობის ოფცია გამოიყენება მხოლოდ mysqld-ის შეჩერებისას.-s ნიშნავს ცხრილის ზოგიერთი ჩვეულებრივი ინფორმაციის იგნორირებას და მხოლოდ შეცდომების ჩამონათვალს.
- თითოეული დაზიანებული ცხრილისთვის სცადეთ
myisamchk -r -q table_name
ეს არის სწრაფი შეკეთების რეჟიმი, რომელიც ავტომატურად შეამოწმებს, შესაძლებელია თუ არა ინდექსის ცხრილი და მონაცემთა ცხრილი თანმიმდევრული იყოს.თუ ის თანმიმდევრულია, შეიძლება გამოსწორდეს.
- თუ სწრაფი გამოსწორების რეჟიმი ვერ ხერხდება, განიხილეთ:
myisamchk -r table_name
არათანმიმდევრული მონაცემები და ინდექსები წაიშლება და ინდექსები აღდგება.
- თუ ეს ვერ მოხერხდა, განიხილეთ:
myisamchk –safe-recover table_name
ოპერაციის მაგალითი
ოპერაციის წარუმატებლობა შეუქცევადია და მონაცემთა ბაზა უნდა შეჩერდეს:
service monit stop
service mysqld stop
cd /var/lib/mysql/eloha_ufo
cd /var/lib/mysql/eloha_cwl
შეასწორეთ ყველა მონაცემთა ფურცელი:
myisamchk -r *.MYI
myisamchk -r -v -f wp_postmeta.MYI
myisamchk -r -v -f wp_posts.MYI
myisamchk -r -v -f wp_options.MYI
myisamchk -r -v -f wp_itsec_log
ეს ბევრად უფრო ნელია ვიდრე -r, მაგრამ უმკლავდება სიტუაციებს, რომლებსაც -r არ შეუძლია.
myisamchk -r -f -o /var/lib/mysql/eloha_ufo/wp_postmeta.MYI
აქ არის ბრძანება მონაცემთა ბაზის ცხრილის სრული ბილიკისთვის:
myisamchk -r -f /var/lib/mysql/eloha_ufo/wp_postmeta.MYI
myisamchk -r -f /var/lib/mysql/eloha_ufo/wp_posts.MYI
გაუშვით MYSQLD მონაცემთა ბაზა:
service mysqld start
service mysqld restart
დაიწყეთ MONIT მონიტორინგის პროგრამა :
service monit restart
service monit start
იმედია, ჩენ ვეილიანგის ბლოგზე ( https://www.chenweiliang.com/ ) გამოქვეყნებული სტატია „MySQL ცხრილის შეცდომის „მონიშნულია როგორც გაფუჭებული და ბოლო (ავტომატური?)“ შეკეთების გადაწყვეტა“ თქვენთვის სასარგებლო იქნება.
თავისუფლად გაგვიზიარეთ ამ სტატიის ბმული: https://www.chenweiliang.com/cwl-176.html
