Döküm ve geri yükleme işlemlerini kullanarak MariaDB veritabanınızı MariaDB için Azure Veritabanına geçirme

Önemli

MariaDB için Azure Veritabanı kullanımdan kaldırılıyor. MySQL için Azure Veritabanı geçiş yapmanızı kesinlikle öneririz. MySQL için Azure Veritabanı geçiş hakkında daha fazla bilgi için bkz. MariaDB için Azure Veritabanı ne oluyor?.

Bu makalede MariaDB için Azure veritabanınızdaki veritabanlarını yedeklemenin ve geri yüklemenin iki yaygın yolu açıklanmaktadır:

  • Komut satırı aracı (mysqldump kullanarak) kullanarak döküm ve geri yükleme.
  • phpMy Yönetici kullanarak döküm ve geri yükleme.

Önkoşullar

Veritabanınızı geçirmeden önce aşağıdakileri yapın:

Ortak araçları kullanma

Verileri MariaDB için Azure veritabanınıza uzaktan bağlamak ve geri yüklemek için MySQL Workbench veya mysqldump gibi yaygın yardımcı programları ve araçları kullanın. MariaDB için Azure veritabanına bağlanmak için istemci makinenizde İnternet bağlantısı olan bu araçları kullanın. En iyi güvenlik uygulaması olarak SSL ile şifrelenmiş bir bağlantı kullanın. Daha fazla bilgi için bkz. MariaDB için Azure Veritabanı'de SSL bağlantısını yapılandırma. MariaDB için Azure veritabanınıza veri geçirirken döküm dosyalarını herhangi bir özel bulut konumuna taşımanız gerekmez.

Döküm ve geri yükleme için yaygın kullanımlar

Çeşitli yaygın senaryolarda veritabanlarını MariaDB için Azure veritabanı sunucusuna dökümü ve yükleme amacıyla mysqldump ve mysqlpump gibi MySQL yardımcı programlarını kullanabilirsiniz.

  • Veritabanının tamamını geçirirken veritabanı dökümlerini kullanın. Bu öneri, büyük miktarda veri taşırken veya canlı siteler veya uygulamalar için hizmet kesintisini en aza indirmek istediğinizde geçerlidir.

  • MariaDB için Azure veritabanınıza veri yüklerken veritabanındaki tüm tabloların InnoDB depolama altyapısını kullandığından emin olun. MariaDB için Azure Veritabanı yalnızca InnoDB depolama altyapısını destekler ve diğer depolama altyapılarını desteklemez. Tablolarınız diğer depolama altyapılarıyla yapılandırılmışsa, MariaDB için Azure veritabanınıza geçirmeden önce bunları InnoDB altyapısı biçimine dönüştürün.

    Örneğin, Bir WordPress uygulamanız veya MyISAM tablolarını kullanan bir web uygulamanız varsa, MariaDB için Azure veritabanınıza geri yüklemeden önce bu tabloları InnoDB biçimine geçirerek dönüştürün. Yeni tablo oluşturmak için kullanılacak altyapıyı ayarlamak için yan tümcesini ENGINE=InnoDB kullanın ve ardından verileri geri yüklemeden önce uyumlu tabloya aktarın.

    INSERT INTO innodb_table SELECT * FROM myisam_table ORDER BY primary_key_columns
    
  • Veritabanlarının dökümünü alırken uyumluluk sorunlarını önlemek için kaynak ve hedef sistemlerde MariaDB'nin aynı sürümünü kullandığınızdan emin olun. Örneğin, mevcut MariaDB sunucunuz sürüm 10.2 ise, 10.2 sürümünü çalıştıracak şekilde yapılandırılmış MariaDB için Azure veritabanınıza geçmeniz gerekir. Komut mysql_upgrade bir MariaDB için Azure Veritabanı sunucusunda çalışmaz ve desteklenmez. MariaDB sürümleri arasında yükseltmeniz gerekiyorsa, önce önceki sürüm veritabanınızı kendi ortamınızda MariaDB'nin sonraki bir sürümüne dökümünü alın veya dışarı aktarın. Ardından MariaDB için Azure veritabanınıza geçiş yapmayı denemeden önce komutunu çalıştırabilirsiniz mysql_upgrade .

Performans değerlendirmeleri

Büyük veritabanlarının dökümünü alırken performansı iyileştirmek için aşağıdaki noktaları göz önünde bulundurun:

  • exclude-triggers mysqldump içindeki seçeneğini kullanın. Veri geri yükleme sırasında tetikleyici komutlarının tetiklemesi önlemek için döküm dosyalarının tetikleyicilerini hariç tutun.
  • single-transaction İşlem yalıtım modunu REPEATABLE READ olarak ayarlamak ve verileri döküm etmeden önce sunucuya START TRANSACTION SQL deyimi göndermek için seçeneğini kullanın. Tek bir işlem içinde birçok tablonun dökümünü almak, geri yükleme sırasında bazı ek depolama alanlarının tüketilmesine neden olur. seçeneği single-transaction ve lock-tables seçeneği birbirini dışlar. Bunun nedeni LOCK TABLES'ın bekleyen işlemlerin örtük olarak işlenmesine neden olmasıdır. Büyük tabloların dökümünü single-transaction almak için seçeneğini seçeneğiyle birleştirin quick .
  • extended-insert Birkaç DEĞER listesi içeren çok satırlı söz dizimini kullanın. Bu yaklaşım daha küçük bir döküm dosyasıyla sonuçlanır ve dosya yeniden yüklendiğinde eklemeleri hızlandırır.
  • Veritabanlarını order-by-primary döküme alırken mysqldump içindeki seçeneğini kullanın; böylece veriler birincil anahtar sırasına göre betik oluşturulur.
  • disable-keys Yüklemeden önce yabancı anahtar kısıtlamalarını devre dışı bırakmak için mysqldump'ta veri dökümü yaparken seçeneğini kullanın. Yabancı anahtar denetimlerinin devre dışı bırakılması performansın artırılmasına yardımcı olur. Bilgi tutarlılığı sağlamak için kısıtlamaları etkinleştirin ve yük sonrasında verileri doğrulayın.
  • Uygun olduğunda bölümlenmiş tabloları kullanın.
  • Verileri paralel olarak yükleyin. Çok fazla paralellikten kaçının; bu da kaynak sınırına ulaşmanıza ve Azure portalında sağlanan ölçümleri kullanarak kaynakları izlemenize neden olabilir.
  • Veritabanı dökümünü defer-table-indexes alırken mysqlpump içindeki seçeneğini kullanın; böylece tablo verileri yüklendikten sonra dizin oluşturma işlemi gerçekleşir.
  • Yedekleme dosyalarını bir Azure blob deposuna kopyalayın ve oradan geri yüklemeyi gerçekleştirin. Bu yaklaşım, geri yükleme işlemini İnternet üzerinden gerçekleştirmekten çok daha hızlı olmalıdır.

Yedekleme dosyası oluşturma

Yerel şirket içi sunucuda veya sanal makinede mevcut bir MariaDB veritabanını yedeklemek için, mysqldump kullanarak aşağıdaki komutu çalıştırın:

mysqldump --opt -u <uname> -p<pass> <dbname> > <backupfile.sql>

Sağlayabilecek parametreler şunlardır:

  • <uname>: Veritabanınızın kullanıcı adı
  • <pass>: Veritabanınızın parolası (-p ile parola arasında boşluk olmadığını unutmayın)
  • <dbname>: Veritabanınızın adı
  • <backupfile.sql>: Veritabanı yedeklemenizin dosya adı
  • <--opt>: mysqldump seçeneği

Örneğin, MariaDB sunucunuzda testdb adlı veritabanını testuser kullanıcı adıyla ve testdb_backup.sql dosyasının parolası olmadan yedeklemek için aşağıdaki komutu kullanın. komutu, veritabanını yeniden oluşturmak için gereken tüm SQL deyimlerini içeren adlı testdb_backup.sqlbir dosyaya yedeklertestdb.

mysqldump -u root -p testdb > testdb_backup.sql

Veritabanınızda yedeklemek üzere belirli tabloları seçmek için tablo adlarını boşluklarla ayırarak listeleyin. Örneğin, testdb'den yalnızca tablo1 ve tablo2 tablolarını yedeklemek için şu örneği izleyin:

mysqldump -u root -p testdb table1 table2 > testdb_tables_backup.sql

Aynı anda birden fazla veritabanını yedeklemek için --database anahtarını kullanın ve veritabanı adlarını boşluklarla ayırarak listeleyin.

mysqldump -u root -p --databases testdb1 testdb3 testdb5 > testdb135_backup.sql

Hedef sunucuda veritabanı oluşturma

Verileri geçirmek istediğiniz hedef MariaDB için Azure Veritabanı sunucusunda boş bir veritabanı oluşturun. Veritabanını oluşturmak için MySQL Workbench gibi bir araç kullanın. Veritabanı, atılan verileri içeren veritabanıyla aynı ada sahip olabilir veya farklı bir ada sahip bir veritabanı oluşturabilirsiniz.

Bağlanmak için MariaDB için Azure veritabanınızın Genel Bakış bölmesinde bağlantı bilgilerini bulun.

Screenshot of the Overview pane for an Azure database for MariaDB server in the Azure portal.

MySQL Workbench'te bağlantı bilgilerini ekleyin.

Screenshot of the MySQL Connections pane in MySQL Workbench.

MariaDB veritabanınızı geri yükleme

Hedef veritabanını oluşturduktan sonra mysql komutunu veya MySQL Workbench'i kullanarak verileri döküm dosyasından yeni oluşturulan veritabanına geri yükleyebilirsiniz.

mysql -h <hostname> -u <uname> -p<pass> <db_to_restore> < <backupfile.sql>

Bu örnekte, verileri hedef MariaDB için Azure Veritabanı sunucusundaki yeni oluşturulan veritabanına geri yüklersiniz.

mysql -h mydemoserver.mariadb.database.azure.com -u myadmin@mydemoserver -p testdb < testdb_backup.sql

PhpMy kullanarak MariaDB veritabanınızı dışarı aktarın Yönetici

Dışarı aktarmak için ortamınızda yerel olarak yüklenmiş olabilecek phpMy Yönetici ortak aracını kullanabilirsiniz. MariaDB veritabanınızı dışarı aktarmak için aşağıdakileri yapın:

  1. phpMy Yönetici'i açın.
  2. Sol bölmede veritabanınızı ve ardından Dışarı Aktar bağlantısını seçin. Veritabanının dökümünü görüntülemek için yeni bir sayfa görüntülenir.
  3. Dışarı Aktar alanında Tümünü Seç bağlantısını seçerek veritabanınızdaki tabloları seçin.
  4. SQL seçenekleri alanında uygun seçenekleri belirleyin.
  5. Dosya olarak kaydet seçeneğini ve buna karşılık gelen sıkıştırma seçeneğini belirleyin ve ardından Git'i seçin. İstemde, dosyayı yerel olarak kaydedin.

phpMy kullanarak veritabanınızı içeri aktarma Yönetici

İçeri aktarma işlemi, dışarı aktarma işlemine benzer. Aşağıdakileri yapın:

  1. phpMy Yönetici'i açın.
  2. phpMy Yönetici kurulum sayfasında Ekle'yi seçerek MariaDB için Azure Veritabanı sunucunuzu ekleyin.
  3. Bağlantı ayrıntılarını ve oturum açma bilgilerini girin.
  4. Uygun şekilde adlandırılmış bir veritabanı oluşturun ve sol bölmeden seçin. Varolan veritabanını yeniden yazmak için veritabanı adını seçin, tablo adlarının yanındaki tüm onay kutularını seçin ve varolan tabloları silmek için Bırak'ı seçin.
  5. SQL komutlarını girebileceğiniz veya SQL dosyanızı karşıya yükleyebileceğiniz sayfayı göstermek için SQL bağlantısını seçin.
  6. Veritabanı dosyasını bulmak için gözat düğmesini seçin.
  7. Yedeklemeyi dışarı aktarmak, SQL komutlarını yürütmek ve veritabanınızı yeniden oluşturmak için Git düğmesini seçin.

Sonraki adımlar