国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

mysql5.0升級(jí)8.0完成后,服務(wù)器重啟引發(fā)"#1449 - The user specified as a definer ('mysql.infoschema'@'localhost') does not exist"異常小結(jié)

這篇具有很好參考價(jià)值的文章主要介紹了mysql5.0升級(jí)8.0完成后,服務(wù)器重啟引發(fā)"#1449 - The user specified as a definer ('mysql.infoschema'@'localhost') does not exist"異常小結(jié)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

遇到的問題:

問題一:ERROR 1449 (HY000): The user specified as a definer ('mysql.infoschema'@'localhost') does not exist

異常原因:未知
  • 解決辦法:

  驗(yàn)證指定的用戶('mysql.infoschema'@'localhost')是否存在于mysql數(shù)據(jù)庫(kù)中

  SELECT User FROM mysql.user WHERE User = 'mysql.infoschema' AND Host = 'localhost';

如果用戶不存在,可以使用以下命令創(chuàng)建該用戶文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-746978.html

  CREATE USER 'mysql.infoschema'@'localhost';
如果用戶已經(jīng)存在,但沒有必要的權(quán)限,則可以使用grant語(yǔ)句授予所需的權(quán)限
  GRANT ALL PRIVILEGES ON *.* TO 'mysql.infoschema'@'localhost';
如果SQL語(yǔ)句要求對(duì)特定表具有SELECT權(quán)限,則可以使用以下命令
  GRANT SELECT ON database_name.table_name TO 'mysql.infoschema'@'localhost';

問題二:執(zhí)行CREATE USER 'mysql.infoschema'@'localhost';時(shí)出現(xiàn) ERROR 1726 (HY000): Storage engine 'MyISAM' does not support system tables. [mysql.db]

異常原因:"mysql.db"系統(tǒng)表的存儲(chǔ)引擎和mysql指定的存儲(chǔ)引擎不一致;
  • 解決辦法:
       查詢mysql指定的存儲(chǔ)引擎是InnoDB還是MyISAM,具體查詢方式根據(jù)自己的環(huán)境查詢,我的環(huán)境是docker-compose創(chuàng)建docker鏡像的方式部署,通過yaml文件將my.cnf文件掛載進(jìn)去,具體在my.cnf的default-storage-engine=INNODB字段;
    執(zhí)行以下sql切換表的存儲(chǔ)引擎,或者在my.cnf文件里更改存儲(chǔ)引擎為你表相應(yīng)的存儲(chǔ)引擎.
    	# 查詢db表的存儲(chǔ)引擎是什么
    		SHOW TABLE STATUS LIKE 'db';
      # 切換其他相關(guān)表的存儲(chǔ)引擎
      	alter table mysql.user ENGINE=InnoDB;
    		alter table mysql.db ENGINE=InnoDB;
    		alter table mysql.tables_priv ENGINE=InnoDB;
    		alter table mysql.columns_priv ENGINE=InnoDB;
    		alter table mysql.procs_priv ENGINE=InnoDB;
    		alter table mysql.proxies_priv ENGINE=InnoDB;
    
    切換引擎時(shí)可能會(huì)導(dǎo)致數(shù)據(jù)庫(kù)重,所以以上每個(gè)引擎請(qǐng)單獨(dú)執(zhí)行。

問題三: 執(zhí)行完成后再次運(yùn)行"CREATE USER 'mysql.infoschema'@'localhost';"創(chuàng)建用戶時(shí),出現(xiàn)user表數(shù)據(jù)寬度不一樣的問題。

異常原因:user表切換引擎導(dǎo)致表結(jié)構(gòu)更改,無(wú)法完整創(chuàng)建用戶
  • 解決辦法:
      找一個(gè)干凈的相同版本的mysql,從里面將user表里的數(shù)據(jù)轉(zhuǎn)換成sql語(yǔ)句(備份),再刪除有問題數(shù)據(jù)庫(kù)的user表,執(zhí)行sql(恢復(fù)).

問題四: 執(zhí)行完成后mysql連接會(huì)斷開,報(bào)密碼錯(cuò)誤。

異常原因:由于user表時(shí)copy過來(lái)的,密碼本身是被特定算法加密的,user表中的加密后的密鑰還原回來(lái)后并不是原密碼,無(wú)法將密碼正確存儲(chǔ)與還原,導(dǎo)致密碼錯(cuò)誤。
  • 解決辦法:
    在my.cnf文件里面加入skip_grant_tables跳過密碼驗(yàn)證。

問題五:加入后無(wú)效或無(wú)法跳過密碼驗(yàn)證

異常原因:未知
  • 解決辦法:
    將原設(shè)備的mysq的data數(shù)據(jù)文件copy到另外一臺(tái)真實(shí)的設(shè)備,并且在真機(jī)原生安裝mysql,將數(shù)據(jù)庫(kù)映射到原data數(shù)據(jù),通過真機(jī)自身的命令行使用--skip_grant_tables執(zhí)行啟動(dòng),跳過密碼登陸,再將數(shù)據(jù)全量備份,重置原設(shè)備的數(shù)據(jù)庫(kù),再重新將原數(shù)據(jù)導(dǎo)回,問題解決。

到了這里,關(guān)于mysql5.0升級(jí)8.0完成后,服務(wù)器重啟引發(fā)"#1449 - The user specified as a definer ('mysql.infoschema'@'localhost') does not exist"異常小結(jié)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包