Ubah jalur datadir yang ada

20

Saya ingin mengubah datadirjalur dalam my.inifile.

Jalur yang ada datadiradalahC:/ProgramData/MySQL/MySQL Server 5.1/Data/

Ukuran C:drive saya adalah 30 GB dan folder data MySQL menempati 25 GB. Jadi saya ingin mengubah datadirke F:/naveen/data.

Apakah ini mungkin?

Mesin saya menjalankan Windows Server 2003 .

naveen
sumber

Jawaban:

26

Dari jalur Anda, saya dapat dengan aman menganggap yang berikut:

  • Anda menjalankan MySQL di Windows
  • Anda menggunakan MySQL MSI untuk menginstal

Yang perlu Anda lakukan adalah membuat file my.ini

Saat menginstal MySQL untuk Windows menggunakan MSI, lokasi my.ini diharapkan C:/ProgramData/MySQL/MySQL Server 5.1.

Silakan jalankan yang berikut ini di Window DOS:

cd C:/ProgramData/MySQL/MySQL Server 5.1
dir *.ini

Anda akan melihat beberapa sampel file my.ini. Namun, jika tidak ada file bernama my.ini di folder itu, Anda harus membuatnya. Apakah ada atau tidak, jalankan ini:

cd C:/ProgramData/MySQL/MySQL Server 5.1
notepad my.ini

Jika Anda diminta untuk membuatnya, silakan lakukan.

Selanjutnya, buat entri berikut di bawah tajuk grup [mysqld] di my.ini:

[mysqld]
datadir=F:/naveen/data

Simpan my.ini

Selanjutnya, hentikan mysql dari baris perintah DOS seperti ini:

C:\> net stop mysql

Selanjutnya, buat salinan dari seluruh folder data di lokasi baru

C:\> xcopy "C:\ProgramData\MySQL\MySQL Server 5.1\data" F:\naveen\data /s

Langkah terakhir, mulai mysql

C:\> net start mysql

Coba masuk ke mysql. Setelah Anda berhasil login ke mysql, jalankan perintah ini:

show variables like 'datadir';

Jika F:\naveen\datamuncul sebagai datadir, SELAMAT, ANDA TELAH MELAKUKANNYA !!!

Setelah Anda puas semua aplikasi Anda mengenai karya MySQL, Anda dapat menghapus semuanya C:\ProgramData\MySQL\MySQL Server 5.1\data\*

Cobalah !!!

RolandoMySQLDBA
sumber
Bolehkah saya tahu langkah-langkah di atas akan bekerja untuk windows server 2008?
Berhasil, tetapi kemungkinan besar Anda akan mendapatkan kesalahan 1067. Periksa izin pada direktori baru
2
Terkadang layanan terdaftar sebagai MySQL57, Anda harus memeriksa dulu.
giannis christofakis
2
Saya membuat kesalahan noob dan tidak menyalin izin. mysql tidak mau memulai ulang. Saya mencoba memberikan LAYANAN JARINGAN akses penuh ke datadir (sesuai saran online lainnya), dan melemparkan kesalahan izin. Jika ini terjadi pada Anda, beri "Semua Orang" kontrol penuh atas subdirektori data dan mewarisi kepada anak-anak. Lalu pergi ke folder induk (datadir), aktifkan warisan melalui izin "Advanced" dan berlaku untuk semua anak. Anda kemudian dapat menambahkan LAYANAN JARINGAN ke datadir Anda, memberikannya kontrol penuh dan itu akan menyebar ke anak-anak.
murraybiscuit
2
Anda harus menggunakan xcopy /O/X/E/H/Kalih-alih xcopy /Sdalam jawaban ini.
Ethan Allen