lostyazilim
tr.link

Veritabanının tamamını import etmek

7 Mesajlar 874 Okunma
acebozum
tr.link

eozbay eozbay WM Aracı Kullanıcı
  • Üyelik 06.10.2017
  • Yaş/Cinsiyet 36 / E
  • Meslek Kimya Mühendisi
  • Konum Konya
  • Ad Soyad E** Ö**
  • Mesajlar 78
  • Beğeniler 5 / 0
  • Ticaret 0, (%0)
Merhaba arkadaşlar. Bir arkadaştan site devraldım. Şu an arkadaşa ulaşamıyorum. Sadece FTP bilgileri var elimde. Ben de FTP den bütün verileri alıp kendi hostuma kopyaladım. Veri tabanını da import etmek istiyorum. phpmyadminin yerini bilmediğimden oradan yapamıyorum. Dosyalar elimde olduğu için veritabanına erişim bilgileri elimde.

Php veya başka bir dil ile veritabanındaki bütün verileri nasıl import ederim (ki kendi veritabanıma aktarayım).
 

 

wmaraci
reklam

dump3cz dump3cz Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 01.05.2017
  • Yaş/Cinsiyet 25 / E
  • Meslek Yazılım
  • Konum Bilecik
  • Ad Soyad O** Ç**
  • Mesajlar 1749
  • Beğeniler 169 / 326
  • Ticaret 3, (%67)
mysql bilgine bağlanabiliyor musun?
 

 

MrTr MrTr Developer Kullanıcı
  • Üyelik 14.10.2017
  • Yaş/Cinsiyet 30 / E
  • Meslek Yazılım Uzmanı
  • Konum İstanbul Avrupa
  • Ad Soyad E** Ö**
  • Mesajlar 46
  • Beğeniler 2 / 10
  • Ticaret 1, (%100)

// Name of the file
$filename = 'churc.sql';
// MySQL host
$mysql_host = 'localhost';
// MySQL username
$mysql_username = 'root';
// MySQL password
$mysql_password = '';
// Database name
$mysql_database = 'dump';

// Connect to MySQL server
mysql_connect($mysql_host, $mysql_username, $mysql_password) or die('Error connecting to MySQL server: ' . mysql_error());
// Select database
mysql_select_db($mysql_database) or die('Error selecting MySQL database: ' . mysql_error());

// Temporary variable, used to store current query
$templine = '';
// Read in entire file
$lines = file($filename);
// Loop through each line
foreach ($lines as $line)
{
// Skip it if it's a comment
if (substr($line, 0, 2) == '--' || $line == '')
continue;

// Add this line to the current segment
$templine .= $line;
// If it has a semicolon at the end, it's the end of the query
if (substr(trim($line), -1, 1) == ';')
{
// Perform the query
mysql_query($templine) or print('Error performing query \'' . $templine . '\': ' . mysql_error() . '

');
// Reset temp variable to empty
$templine = '';
}
}
echo "Tables imported successfully";
?>

Stackoverflow da böyle bir soruya verilen onaylı cevap.Gerekli alanları kendinize göre düzenleyip yedek alabilirsiniz
 

 

Tema tasarımı,Özel yazılım,Reklam ve Grafik(logo,banner ve baskı) işlemleriniz için ulaşabilirsiniz.

eozbay eozbay WM Aracı Kullanıcı
  • Üyelik 06.10.2017
  • Yaş/Cinsiyet 36 / E
  • Meslek Kimya Mühendisi
  • Konum Konya
  • Ad Soyad E** Ö**
  • Mesajlar 78
  • Beğeniler 5 / 0
  • Ticaret 0, (%0)
Bunu zaten yapmıştım fakat şöyle bir hata veriyor:

Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home3/limon/public_html/sites/atlas/importdb.php on line 15

Warning: file(churc.sql): failed to open stream: No such file or directory in /home3/limon/public_html/sites/atlas/importdb.php on line 22

Warning: Invalid argument supplied for foreach() in /home3/limon/public_html/sites/atlas/importdb.php on line 24
Tables imported successfully
 

 

wmaraci
wmaraci

eozbay eozbay WM Aracı Kullanıcı
  • Üyelik 06.10.2017
  • Yaş/Cinsiyet 36 / E
  • Meslek Kimya Mühendisi
  • Konum Konya
  • Ad Soyad E** Ö**
  • Mesajlar 78
  • Beğeniler 5 / 0
  • Ticaret 0, (%0)

dump3cz adlı üyeden alıntı

mysql bilgine bağlanabiliyor musun?


bilgine derken neyi kastediyorsunuz?
mysql e bağlanmada sorun yok. Size zaten çalışıyor.
 

 

kelebek kelebek WM Aracı Kullanıcı
  • Üyelik 11.05.2013
  • Yaş/Cinsiyet 32 / E
  • Meslek Geliştirici
  • Konum Malatya
  • Ad Soyad E** K**
  • Mesajlar 3142
  • Beğeniler 60 / 764
  • Ticaret 5, (%100)

eozbay adlı üyeden alıntı

Bunu zaten yapmıştım fakat şöyle bir hata veriyor:

Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home3/limon/public_html/sites/atlas/importdb.php on line 15

Warning: file(churc.sql): failed to open stream: No such file or directory in /home3/limon/public_html/sites/atlas/importdb.php on line 22

Warning: Invalid argument supplied for foreach() in /home3/limon/public_html/sites/atlas/importdb.php on line 24
Tables imported successfully



mysql komutu kullanımdan kaldırıldı. Aşağıdaki kodu bir deneyin.

$server = 'localhost';
$username = 'root';
$password = 'your password';
$database = 'sample_db';

/* PDO connection start */
$conn = new PDO("mysql:host=$server; dbname=$database", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$conn->exec("SET CHARACTER SET utf8");
/* PDO connection end */

// your config
$filename = 'yourFile.sql';

$maxRuntime = 8; // less then your max script execution limit


$deadline = time()+$maxRuntime;
$progressFilename = $filename.'_filepointer'; // tmp file for progress
$errorFilename = $filename.'_error'; // tmp file for erro



($fp = fopen($filename, 'r')) OR die('failed to open file:'.$filename);

// check for previous error
if( file_exists($errorFilename) ){
die('
 previous error: '.file_get_contents($errorFilename));

}

// activate automatic reload in browser
echo '
';


// go to previous file position
$filePosition = 0;
if( file_exists($progressFilename) ){
$filePosition = file_get_contents($progressFilename);
fseek($fp, $filePosition);
}

$queryCount = 0;
$query = '';
while( $deadline>time() AND ($line=fgets($fp, 1024000)) ){
if(substr($line,0,2)=='--' OR trim($line)=='' ){
continue;
}

$query .= $line;
if( substr(trim($query),-1)==';' ){

$igweze_prep= $conn->prepare($query);

if(!($igweze_prep->execute())){
$error = 'Error performing query \'' . $query . '\': ' . print_r($conn->errorInfo());
file_put_contents($errorFilename, $error."\n");
exit;
}
$query = '';
file_put_contents($progressFilename, ftell($fp)); // save the current file position for
$queryCount++;
}
}

if( feof($fp) ){
echo 'dump successfully restored!';
}else{
echo ftell($fp).'/'.filesize($filename).' '.(round(ftell($fp)/filesize($filename), 2)*100).'%'."\n";
echo $queryCount.' queries processed! please reload or wait for automatic browser refresh!';
}
MeMo

kişi bu mesajı beğendi.

eka7a eka7a openix.io Kullanıcı
  • Üyelik 18.06.2013
  • Yaş/Cinsiyet 39 / E
  • Meslek Yazılımcı
  • Konum Bursa
  • Ad Soyad E** K**
  • Mesajlar 651
  • Beğeniler 109 / 313
  • Ticaret 2, (%100)

eozbay adlı üyeden alıntı

Bunu zaten yapmıştım fakat şöyle bir hata veriyor:

Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home3/limon/public_html/sites/atlas/importdb.php on line 15

Warning: file(churc.sql): failed to open stream: No such file or directory in /home3/limon/public_html/sites/atlas/importdb.php on line 22

Warning: Invalid argument supplied for foreach() in /home3/limon/public_html/sites/atlas/importdb.php on line 24
Tables imported successfully


mysql_connect yerine mysqli ya da PDO kullanmalısınız.

Örnek mysqli ve pdo bağlantı sınıfları bakabilirsiniz.

https://github.com/epiksel/opencart-tr/blob/master/tam-surum/ana_dizine_yukleyin/system/library/db/mysqli.php
https://github.com/epiksel/opencart-tr/blob/master/tam-surum/ana_dizine_yukleyin/system/library/db/mpdo.php

Ya da hazır kütüphane kullanabilirsiniz.
https://github.com/2createStudio/shuttle-export
 

 

Openix.io | $9.90 PositiveSSL | $12.90 RapidSSL
wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)