MySQL Server için taşıma işlemi
Ön koşullar
•Kaynak ve Hedef SQL Server durumları yüklenmelidir. Bunlar, farklı makinelerde barındırılıyor olabilir.
•MySQL araçları en az bir bilgisayarda kullanılabilir olmalıdır (mysqldump ve mysql istemcisi).
Faydalı bağlantılar
•https://dev.mysql.com/doc/refman/8.0/en/copying-databases.html
•https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html
•https://dev.mysql.com/doc/refman/8.0/en/mysql.html
Taşıma işlemi
Komutlarda yapılandırma dosyalarında veya aşağıdaki SQL açıklamalarında, lütfen daima şu değişiklikleri yapın: •SRCHOST kaynak veri tabanı sunucusunun adresiyle birlikte •SRCROOTLOGIN yerine kaynak MySQL sunucusu kök kullanıcı girişi •SRCDBNAME yerine yedeklenecek kaynak ESET PROTECT veri tabanının adı •BACKUPFILE yerine yedeklemenin depolanacağı dosyanın yolu •TARGETROOTLOGIN yerine hedef MySQL sunucusu kök kullanıcı girişi •TARGETHOST yerine hedef veri tabanı sunucusunun adresi •TARGETDBNAME yerine yedeklenecek hedef ESET PROTECT veri tabanının adı (taşımadan sonra) •TARGETLOGIN yerine hedef veri tabanı sunucusunda yeni ESET PROTECT veri tabanı kullanıcısının oturum açma adı •TARGETPASSWD yerine veri tabanı sunucusunda yeni ESET PROTECT veri tabanı kullanıcısının parolası |
Aşağıdaki SQL ifadelerini komut satırı üzerinden yürütmek gerekmez. GUI aracı kullanılabiliyorsa bildiğiniz bir uygulamayı kullanabilirsiniz.
1.ESET PROTECT Server/MDM hizmetlerini durdurun.
2.Kaynak ESET PROTECT veri tabanının (taşımayı planladığınız veri tabanı) tam veri tabanı yedeklemesini oluşturun:
mysqldump --host SRCHOST --disable-keys --extended-insert --routines -u SRCROOTLOGIN -p SRCDBNAME > BACKUPFILE |
3.Hedef MySQL sunucusunda boş bir veri tabanı hazırlayın:
mysql --host TARGETHOST -u TARGETROOTLOGIN -p "--execute=CREATE DATABASE TARGETDBNAME /*!40100 DEFAULT CHARACTER SET utf8 */;" |
Linux sistemlerinde " tırnak işareti yerine ' apostrof işaretini kullanın. |
4.Hedef MySQL sunucusundaki veri tabanını daha önce hazırlanmış olan boş veri tabanına geri yükleyin:
mysql --host TARGETHOST -u TARGETROOTLOGIN -p TARGETDBNAME < BACKUPFILE |
5.Hedef MySQL sunucusunda bir ESET PROTECT veri tabanı oluşturun:
mysql --host TARGETHOST -u TARGETROOTLOGIN -p "--execute=CREATE USER TARGETLOGIN@'%' IDENTIFIED BY 'TARGETPASSWD';" |
TARGETLOGIN için önerilen karakterler:
•Küçük ASCII harfleri, sayılar ve alt çizgi "_"
TARGETPASSWD için önerilen karakterler:
•Büyük ve küçük ASCII harfleri, sayılar, boşluklar ve özel karakterler dahil olmak üzere yalnızca ASCII karakterleri
•ASCII dışı karakterler, küme parantezi {} veya @ kullanmayın
Yukarıdaki karakter önerilerine uymazsanız veri tabanına bağlanma sorunları yaşayabilirsiniz veya daha sonraki adımlarda, veri tabanı bağlantı dizesi modifikasyonu sırasında özel karakterlerden çıkış yapmak zorunda kalırsınız. Karakterden çıkış yapma kuralları bu belgede yer almamaktadır.
6.Hedef MySQL sunucusunda ESET PROTECT veri tabanı kullanıcısına doğru erişim haklarını verin:
mysql --host TARGETHOST -u TARGETROOTLOGIN -p "--execute=GRANT ALL ON TARGETDBNAME.* TO TARGETLOGIN;" |
Linux sistemlerinde " tırnak işareti yerine ' apostrof işaretini kullanın. |
7.tbl_authentication_certificate tablosunun içeriklerini silin (aksi halde, Agent'lar yeni Server'a bağlanamayabilir):
mysql --host TARGETHOST -u root -p "--execute=DELETE FROM era_db.tbl_authentication_certificate where certificate_id = 1;" |