Ana Sayfa » ipucu » MySQLdump – InnoDB single-transaction ve quick dump

MySQLdump – InnoDB single-transaction ve quick dump


BerbatKötüİdare EderGüzelHarika (Toplam 1 oy. 5 puan üzerinden ortalama 5,00 || Oy vererek siz de katkıda bulunabilirsiniz.)
Loading...

Warning: mysqli_query(): (HY000/3): Error writing file '/tmp/MYrrcA7B' (Errcode: 28 - No space left on device) in /usr/share/nginx/html/syslogs/wp-includes/class-wpdb.php on line 2349

Büyük ve yoğun kullanılan InnoDB veritabanlarının ile yedeklenmesı esnasında database'i kullanan uygulamayı bloke etmemek için single-transaction isimli bir özellik bulunuyor.  Sadece InnoDB tablolar için kullanılabilen bu parametre sayesinde yedeklenme sırasında uygulama kesintiye uğramıyor.  Büyük veri tabanlarını (mesela 70-80GB gibi) yedeklemek zaman isteyen bir süreç olduğundan dolayı yedekleme sırasında db'yi kullanan uygulamayı kilitlememek bu anlamda önemli bir nokta haline geliyor.

Single-transaction özelliğini kullanmak için cümlesine parametre olarak eklemek yeterli:

#  --user=kullaniciadi --password=sifre --single-transaction database_adi > database_adi.sql

mysqldump dökümanıında single-transaction ile ilgili açıklama şu şekilde:

This option sends a START TRANSACTION SQL statement to the server before dumping data.
It is useful only with transactional tables such as InnoDB, because then it dumps the
consistent state of the database at the time when BEGIN was issued without blocking any applications.

When using this option, you should keep in mind that only InnoDB tables are dumped in a consistent state.
For example, any MyISAM or MEMORY tables dumped while using this option may still change state.

Ayrıca tablolarınız çok çok büyük ise  –single-transaction ile birlikte –quick parametresini de kullanabilirsiniz.

Öteyandan single-transaction ile ilgili dikkat edilmesi gereken bir nokta var; bu parametre ile alınan bir dump dosyasının düzgünlüğünden emin olmak için, dump esnasında, herhangi başka bir uygulamanın db üzerinde ALTER TABLE, CREATE TABLE, DROP TABLE, RENAME TABLE, TRUNCATE TABLE ifadelerini kullanan herhangi bir işlem yapmaması gerekiyor. Bu nedenle kullanırken dikkatli davranmak yerinde olacaktır.

Konuyla ilgili tüm detaylar için aşağaki adresi ziyaret edebilirsiniz:

http://dev.mysql.com/doc/refman/5.6/en/mysqldump.html#option_mysqldump_single-transaction

Visited 587 times, 1 visit(s) today
Kategoriler: ipucu,Mysql |

Bu yazılar da ilginizi çekebilir:


- MySQL Database Schema Export
- MySQL: InnoDB Database Ebatının Küçültülmesi – Shrink ibdata1
- MySQL Repair MyISAM Table – BozulmuşTabloların Onarılması
- MySQL Full-Text Search Minimum Length Limitini Değiştirmek
- Mysql Replikasyon Yapılandırması

Yorumlar


Henuz yorum yapilmamis.

Yorumda bulunun.