2014-10-27 32 views
10

Mysqldump: Var hatası: 1449: nazik ilgili bir çözelti elde KİLİT TABLOLAR Mysqldump: Var hatası: 1449:

kullanırken bir tanımlayıcısı olarak belirtilen kullanıcı ('kökü' @ '192.200.1.16') yok yukarıdaki hata. birinin altında deneyin çalışmıyor eğer yukardaki

mysqldump --single-transaction -u root -p mydb > mydb.sql 

: Daha iyi

+2

olası yinelenen: kullanıcı tanımlayıcı olarak belirtilmemiş] (http://stackoverflow.com/questions/10169960/mysql-error-1449-the-user-specified-as-a-definer-does-not-exist) –

cevap

30

Onun gibi --single-transaction ilk mysqldump kullanımı.

Tanımlayıcıyı bu yordamlar/yöntemler için değiştirmeniz gerekir ve daha sonra dökümü hata olmadan oluşturabilirsiniz.

UPDATE `mysql`.`proc` p SET definer = '[email protected]' WHERE definer='[email protected]' 
+0

Ya eğer? Bir yordamı, görünümü veya yöntemi değil, bir tanımlayıcıyı değiştirmeniz gereken bir tablo mu? –

+1

Bu benim için çalıştı! Teşekkür ederim! –

+1

Teşekkürler! İşe yaradı! Ayrıca, ilgilenen varsa, [burada] (https://dev.mysql.com/doc/refman/5.7/en/mysqldump.html#option_mysqldump_single-transaction) '--single-transaction' seçeneğindeki bazı belgelerdir. . –

-4

bu deneyin:

Böyle yapabilirsiniz

Bir örnek diğerine ancak bir veritabanı geçirmek istedik sorun oldu benzer bir sorun vardı
mysqldump -h hostname -u thomas -p -x dbname > xxx_2015_03_25.sql 
+1

Sorguyu çözmek için daha fazla bilgi vermeniz yeterlidir, yalnızca dökümü almak sorunu çözmeyecektir. –

+0

Bu cevap dozu bu soruyu desteklemiyor. – shgnInc

0

döküm ayrıca diğer veritabanlarına atıfta bulunan prosedürlerdi, bu yüzden bu hataları işaretledim ve prosedürleri değiştirerek veya bazılarını kaldırmada başarısız oldum. i

nihayet benim veritabanında tüm definer değiştirmek için bu sorguyu kullanılan başka bir ana bilgisayardan tüm görüş ve tablo kopyalanan zaman

0

i aynı sorunla karşı karşıya

SELECT CONCAT("ALTER DEFINER=`youruser`@`host` VIEW ", table_name, " AS ",view_definition, ";") FROM information_schema.views WHERE table_schema='your-database-name'; 
[MySQL hatası 1449 arasında
İlgili konular