MySQL DB Sunucusunda Veri Dizini Değiştirme


10

Windows Server 2012 R2 üzerinde mysql sunucusu 5.6.24 yükledim.

Döküm dosyalarını içe aktardım ve veri dosyaları C:\ProgramData\MySQL\MySQL Server 5.6\data

Dizini değiştirmek istiyorum D:\ProgramData\Data.

Lütfen bana yardım edebilir misin?

Yanıtlar:


10
  1. Windows CLI'yı Yönetici olarak açın ve MySQL'i kapatın

    net stop mysql
  2. Verileri Kopyala D:\ProgramData\Data

    xcopy /s C:\ProgramData\MySQL\MySQL Server 5.6\data D:\ProgramData\Data
  3. Oluştur veya düzenle C:\ProgramData\MySQL\MySQL Server 5.6\my.ini

    Bunu şuraya ekle: my.ini

    [mysqld]
    datadir = D:/ProgramData/Data
  4. Başlangıç ​​MySQL

    net start mysql

    Yürütemezseniz net start mysql, Windows kontrol panelini deneyin.

  5. MySQL'e giriş yapın ve her şeyin iyi olduğunu doğrulayın

MySQL'e giriş yaptığınızda bunu çalıştırın

mysql> SHOW GLOBAL VARIABLES LIKE 'datadir';

Yeni veri dizininize varsayılan veri dizininin kullandığı kullanıcılar için Ağ Hizmeti ve Yönetici için aynı izinleri vermeyi unutmayın , aksi takdirde korkunç "başlatıldı ve sonra durduruldu" hatasına neden olur. Yenisinin çalıştığından emin olana kadar bu dizini silmeyin.

Bu işe yaramazsa, geri alma planı şöyledir:

net stop mysql
del "C:\ProgramData\MySQL\MySQL Server 5.6\my.ini"
net start mysql

0

Kurulumdan sonra veritabanı dizini nasıl değiştirileceği için Windows 10'da MySQL sunucusu 8.0 için geçerli bir cevap ekleyerek (internette aradım ve bir çözüm bulamadım ve neredeyse çıldırdım, bu yüzden bu birine yardımcı olur umarım).

İlk adımlar MySQL Server 5.6 için olağan diğer talimatlarla aynıdır. Tek fark temel olarak 3. adımdır:

  1. Hizmetlere gidin (örn. WIN + R tuşlarına basın, yazın services.msc, enter tuşuna basın ) ve MySQL80sağ tıklayıp 'durdur' düğmesini tıklatarak hizmeti durdurun (kurulum sırasında hizmet adı belirtilir, bu nedenle ad sizin için farklı olabilir).

  2. Veritabanı klasörünü istediğiniz yere taşıyın. Başlangıç ​​konumu genellikle C:\ProgramData\MySQL\MySQL Server 8.0\data. İçinde C:\ProgramData\MySQL\MySQL Server 8.0\klasöründe, bir olmalı my.inidosyası. Notepad ++ (veya başka bir not defteri) ile düzenlemek ve eski konumdan bazı biçimlerde geçen satırları aramak için açın. İki kez meydana gelmesi gerekir (biri için datadir, biri için secure-file-priv). Her ikisini de karşılık gelen yeni konuma yeniden adlandırın (muhtemelen datadirparçayı yeniden adlandırmanız yeterlidir , ancak üzgün olmaktan daha iyi olabilir). Başlangıçta, genellikle şöyle görünürler:

    datadir=C:/ProgramData/MySQL/MySQL Server 8.0/Data

    ve

    secure-file-priv="C:/ProgramData/MySQL/MySQL Server 8.0/Uploads"

    Dolayısıyla, yeni konum olması gerekiyorsa E:/MySQL/MySQL Server 8.0/..., her iki girişi de şu şekilde yeniden adlandırın:

    datadir=E:/MySQL/MySQL Server 8.0/Data

    ve

    secure-file-priv="E:/MySQL/MySQL Server 8.0/Uploads"
  3. Şimdi, veritabanı hareketli ve girişleri yeniden adlandırma sonra my.initekrar hizmetini yeniden ÖNCE kayıt düzenleyicisini açın, dosyaya (örneğin basın WIN + R, "regedit", butonu tıklayın) için navigasyon Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL80(bir kez daha, MySQL80bir kurulum sırasında seçtiğiniz ve farklılık gösterebilecek MySQL hizmetinin hizmet adını MySQL80) girin ve ImagePathgirişi sağ tıklayın ve değiştir'i seçin. Buna benzer bir dize görüntülenmelidir:

    "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe" --defaults-file="C:\ProgramData\MySQL\MySQL Server 8.0\my.ini" MySQL80

    Bu, temel olarak, hizmet tarafından ek bir yapılandırma dosyası parametresiyle, yani my.inidaha önce değiştirdiğimiz dosyayla yürütülen gerçek exe dosyasına bağlantıdır . Bu nedenle, elbette, yapılandırıldığından beri yapılandırma dosyasının yolunun da güncellenmesi gerekir, bu nedenle bu örnek için şu şekilde değiştirilecektir:

    "C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe" --defaults-file="E:\MySQL\MySQL Server 8.0\my.ini" MySQL80

    Elbette, yalnızca yapılandırma dosyasının yolunun değiştirilmesi gerektiğini unutmayın.

  4. Şimdi servis yeniden başlatılabilir! Hizmetlere tekrar gidin MySQL80ve 'başlat' seçeneğini tekrar seçmek için hizmete sağ tıklayın ve sorunsuz bir şekilde yeniden başlamalıdır. 3. adım atlanırsa, yeniden başlatma genellikle çalışmaz!

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.