Hoşgeldin Misafir

Yüksek boyutlu MYI, MYD ve SQL veritabanı içeri nasıl aktarılır?

Re-Start

Re-Start

Moderatör
MĂRĂCINENI – Argeșelu
11 Ara 2017
2,277 Mesaj

Aktiflik

Seviye

Deneyim

TIM / GÖREV:
Yüksek boyutlu MYI, MYD ve SQL veritabanı içeri nasıl aktarılır?

Merhabalar Ben @Slytherin Lojistik grup adına paylaşılan Yüksek boyutlu MYI, MYD ve SQL veritabanı içeri nasıl aktarılır? makalesinde sizi görmekten mutluyum.


Yüksek boyutlu MYI, MYD ve SQL dosyalarını bir MySQL veritabanına aktarmak, genellikle veritabanı yönetimi ve veri taşıma işlemleri sırasında karşılaşılan bir durumdur. Bu dosyalar, MySQL veritabanının belirli bileşenleriyle ilişkilidir ve doğru bir şekilde aktarılmaları için belirli adımların izlenmesi gerekir.
...
hazırsanız başlayalım.

hjtchdb.jpg


Yüksek boyutlu MYI, MYD ve SQL veritabanı içeri nasıl aktarılır?

Her bir dosyanın ne olduğunu ve nasıl kullanılacağını anlamak, aktarma işlemini kolaylaştıracaktır:

- MYI (MySQL Index): Bu dosya, MySQL veritabanında bir tabloya ait indeks bilgilerini saklar. İndeksler, veritabanı sorgularının hızlı bir şekilde çalışmasını sağlar.
- MYD (MySQL Data): Bu dosya, MySQL veritabanında bir tabloya ait *veri*yi saklar. Veritabanındaki tüm satırlar bu dosyada yer alır.
- SQL: Bu dosya, SQL komutlarını içeren bir dosyadır. Genellikle veritabanı şeması ve verilerin yedeği alınırken kullanılır. SQL dosyaları, INSERT, CREATE TABLE, ALTER gibi SQL komutlarını içerir.

Yüksek boyutlu bu dosyaların içeriğini veritabanına aktarmanın birkaç yolu vardır. Aşağıda, her bir dosya türü için en yaygın ve etkili yöntemleri açıklayacağız.


1. MYI ve MYD Dosyalarını Aktarma
MYI ve MYD dosyaları, belirli bir tabloya ait veri ve indeks dosyalarıdır. Bu dosyaları bir MySQL veritabanına aktarmak için aşağıdaki adımları izleyebilirsiniz.

a. Dosyaların Yerini Belirleme
Öncelikle MYI ve MYD dosyalarının bulunduğu dizini belirleyin. Bu dosyalar genellikle, MySQL veri dizininde yer alır. Örneğin, Linux sunucularında bu dosyalar genellikle şu dizinde bulunur:

Kod:
/var/lib/mysql/kullaniciadi_database/

b. Yeni Veritabanı Oluşturma
Yeni bir veritabanı oluşturun (eğer hedef veritabanı henüz yoksa). Bu işlemi MySQL veya MariaDB komut satırında yapabilirsiniz.


SQL:
sql
CREATE DATABASE kullaniciadi_database;


c. Dosyaları Hedef Dizinine Kopyalama
MYI ve MYD dosyalarını, yeni veritabanınızın bulunduğu dizine kopyalayın. Örneğin, aşağıdaki komutla bu dosyaları kopyalayabilirsiniz:


Bash:
bash
cp /path/to/eski_database/database.MYI /var/lib/mysql/kullaniciadi_database/
cp /path/to/eski_database/database.MYD /var/lib/mysql/kullaniciadi_database/


d. İndekslerin Yeniden Oluşturulması
Eğer veritabanı ve tablolar mevcutsa, MYI dosyaları kopyalandığında indeksler otomatik olarak oluşturulabilir. Ancak, indeksleri yeniden oluşturmak için şu komutu kullanabilirsiniz:


SQL:
sql
REPAIR TABLE tablo_adi;


e. MySQL Servisini Yeniden Başlatma
Dosyaların doğru şekilde aktarıldığından emin olmak için MySQL servisini yeniden başlatabilirsiniz:


Bash:
bash
sudo systemctl restart mysql

2. SQL Dosyasını Aktarma

SQL dosyası, veritabanı şemasını ve verileri içeren bir dosyadır. Yüksek boyutlu SQL dosyalarını veritabanına aktarmak için aşağıdaki yöntemleri kullanabilirsiniz.


a. mysql Komut Satırı Aracını Kullanma
MySQL veya MariaDB veritabanına büyük bir SQL dosyasını aktarmanın en yaygın yolu, mysql komut satırı aracını kullanmaktır.

Bash:
bash
mysql -u username -p database_adi < /path/to/yuklenecek.sql


Bu komut, SQL dosyasındaki tüm komutları çalıştırarak veritabanına aktaracaktır. Veritabanı adı ve dosya yolunu kendi ihtiyaçlarınıza göre değiştirdiğinizden emin olun.

b. mysqlimport Kullanma
mysqlimport, SQL dosyasındaki verileri veritabanına yüklemek için kullanılan bir başka komut satırı aracıdır. Ancak, SQL dosyasının bir tabloyu doğrudan yüklediğinden emin olmanız gerekir. Eğer SQL dosyanızda yalnızca veri varsa, aşağıdaki komutla veriyi yükleyebilirsiniz:


Bash:
bash
mysqlimport -u username -p --local database_adi/path/to/yuklenecek.sql


c. PhpMyAdmin veya Yönetim Paneli Kullanma

Eğer phpMyAdmin veya başka bir veritabanı yönetim paneli kullanıyorsanız, büyük SQL dosyaları yüklemek için panelin import (içe aktarma) özelliğini kullanabilirsiniz. Ancak, phpMyAdmin genellikle 50 MB'den büyük dosyalar için sınırlamalara sahip olabilir. Bu durumda aşağıdaki adımları izleyebilirsiniz:

- phpMyAdmin üzerinden aktarım: Veritabanı yönetim panelinizin "İçe Aktarma" sekmesinde, SQL dosyanızı yükleyebilirsiniz. Ancak dosya boyutunun phpMyAdmin ayarlarına uygun olması gerekir.
- Büyük Dosya Yükleme İçin: Eğer büyük boyutlu bir SQL dosyanız varsa, phpMyAdmin’in php.ini dosyasındaki yükleme boyutunu arttırmanız gerekebilir. Bu, upload_max_filesize ve post_max_size ayarlarını artırarak yapılabilir.


3. Büyük SQL Dosyaları İçin Ekstra Yöntemler

Eğer SQL dosyanız çok büyükse ve komut satırı veya phpMyAdmin üzerinden yüklemek zor oluyorsa, aşağıdaki yöntemleri kullanabilirsiniz:

a. MySQLDump ile Yedekten Geri Yükleme
Bir veritabanını mysqldump ile yedeklemişseniz, yedekten geri yükleme işlemi şu şekilde yapılabilir:


Bash:
bash
mysqldump -u username -p database_adi > /path/to/yedek.sql


Yedekten geri yüklemek için:

Bash:
bash
mysql -u username -p database_adi < /path/to/yedek.sql

b. Dosya Bölme
Eğer SQL dosyanız çok büyükse, dosyayı küçük parçalara bölerek her birini sırayla yükleyebilirsiniz. Bunun için split komutunu kullanabilirsiniz:

Bash:
bash
split -l 5000 large_file.sql small_part_

Bu komut, SQL dosyasını 5000 satırda bir böler ve her bir parça small_part_aa, small_part_ab vb. isimlendirilir. Ardından bu dosyaları sırayla yükleyebilirsiniz.

c. MySQL Konfigürasyon Ayarları
Eğer büyük SQL dosyalarını yüklerken zaman aşımı veya bağlantı hataları alıyorsanız, MySQL’in my.cnf (veya my.ini) konfigürasyon dosyasındaki ayarları değiştirebilirsiniz:

- max_allowed_packet: Büyük verilerin yüklenmesini sağlamak için bu parametreyi arttırabilirsiniz.
- wait_timeout ve interactive_timeout: Bağlantı zaman aşımını engellemek için bu parametreleri artırabilirsiniz.

Yüksek boyutlu MYI, MYD ve SQL dosyalarını veritabanına aktarmak için farklı yöntemler vardır. Bu yöntemler, kullanılan veritabanı türüne, dosya boyutuna ve sistem yapılandırmasına bağlı olarak değişebilir. MYI ve MYD dosyalarını aktarmak için, dosyaları doğru dizine kopyalayarak ve ardından REPAIR TABLE komutunu kullanarak işlemi tamamlayabilirsiniz. SQL dosyasını aktarmak için ise mysql komut satırı aracı veya phpMyAdmin gibi araçlar kullanılabilir. Yüksek boyutlu dosyalar için zaman aşımı sorunları ile karşılaşırsanız, dosyayı parçalara ayırmak veya MySQL konfigürasyon ayarlarını değiştirmek gerekebilir.


Makalemizi okuduğunuz için teşekkür ediyoruz, falan filan kendi kelimeleriniz
Yorum yapmayı ve beğenmeyi unutmayın.
-----------


LOJİSTİK TİM SUNDU
btn1pyf.png