MySQL數(shù)據(jù)庫在升級到5.7版本后,和之前的版本有些不一樣,沒有data文件夾,我們都知道MySQL數(shù)據(jù)庫文件是保存在data文件夾中的,網(wǎng)上有人說把5.6版本的data文件夾拷貝一個(gè),這種說法聽聽都不靠譜,我也試了,確實(shí)能夠登錄,但是無法修改管理員密碼,下面還是給個(gè)標(biāo)準(zhǔn)的解決方法。\x0d\x0a 安裝好MySQL5.7后,打開cmd命令窗口,并且進(jìn)入到MySQL安裝目錄中的bin目錄,然后輸入如下命令回車即可:\x0d\x0a mysqld --initialize-insecure --user=mysql\x0d\x0a 執(zhí)行完上面命令后,MySQL會(huì)自建一個(gè)data文件夾,并且建好默認(rèn)數(shù)據(jù)庫,登錄的用戶名為root,密碼為空,后面的操作就跟之前版本一樣了
創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于做網(wǎng)站、成都網(wǎng)站制作、云溪網(wǎng)絡(luò)推廣、微信小程序、云溪網(wǎng)絡(luò)營銷、云溪企業(yè)策劃、云溪品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供云溪建站搭建服務(wù),24小時(shí)服務(wù)熱線:18980820575,官方網(wǎng)址:chinadenli.net
一、無法訪問系統(tǒng)資源
MySQL 不能訪問啟動(dòng)需要的資源是造成而 MySQL 無法啟動(dòng)的一個(gè)常見原因,如:文件,端口等。由于 linux 中用于啟動(dòng) mysqld 進(jìn)程的 mysql 用戶通常是不能登陸的,可以使用類似下面的命令檢查文件的訪問權(quán)限。
sudo -u mysql touch /var/lib/mysql/b
找出問題后,修改對應(yīng)文件或目錄的權(quán)限或?qū)僦骱笸ǔ?梢越鉀Q問題。但有時(shí) mysql 用戶有訪問文件和目錄的權(quán)限,但仍然會(huì)被拒絕訪問,例如下面這個(gè)例子:
mysql system sudo -u mysql touch /home/mysql/data/a
mysql create table t1 (
id int primary key,n varchar(10
) data directory
ERROR 1030 (HY000): Got error 168 from storage engine
測試說明 mysql 用戶有這個(gè)目錄的訪問權(quán)限,但創(chuàng)建文件還是失敗,這種情況讓很多人困惑,這個(gè)時(shí)候通常是 mysqld 進(jìn)程的訪問被 linux 的 selinux 或 apparmor 給阻止了,大家可以看到創(chuàng)建的表不是在 mysql 的默認(rèn)目錄下面,因此 selinux 或 apparmor 的 policy 里面沒有包含這個(gè)目錄的訪問權(quán)限,此時(shí)只要對應(yīng)的修改 policy 就行了,當(dāng)然把 selinux 或 apparmor 停了也行。
有時(shí)雖然對系統(tǒng)資源有訪問的權(quán)限,但系統(tǒng)資源已經(jīng)被占用:
mysqld --no-defaults --console --user mysql
2020-11-03T03:36:07.519419Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.19) starting as process 21171
2020-11-03T03:36:07.740347Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibdata1 error: 11
這個(gè)故障產(chǎn)生的原因是另外一個(gè) mysqld 進(jìn)程已經(jīng)啟動(dòng)并占用了對應(yīng)的文件。
二、參數(shù)設(shè)置錯(cuò)誤
參數(shù)設(shè)置錯(cuò)誤造成 MySQL 無法啟動(dòng)的原因也非常常見,此時(shí)先要檢查 MySQL 啟動(dòng)時(shí)會(huì)調(diào)用的參數(shù),下面的命令可以查詢 MySQL 啟動(dòng)時(shí)調(diào)用參數(shù)文件的順序:
$ mysqld --verbose --help | grep "Default options " -A 1
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf ~/.my.cnf
知道了 MySQL 參數(shù)文件的調(diào)用順序,我們就可以檢查對應(yīng)的參數(shù)文件,找出其中的錯(cuò)誤,如果覺得參數(shù)文件的可讀性不強(qiáng),可以使用下面的命令顯示 mysqld 程序?qū)⒁{(diào)用的參數(shù):
$ mysqld --print-defaults
/usr/sbin/mysqld would have been started with the following arguments:
......
注意這個(gè)命令顯示完參數(shù)后就退出,不會(huì)真正運(yùn)行 mysqld。這個(gè)命令和 my_print_defaults mysqld 完全是等價(jià)的,只不過后者的顯示方式是一行一個(gè)參數(shù)。
然后開始對可疑的參數(shù)進(jìn)行調(diào)試,我個(gè)人喜歡加的參數(shù)和順序如下:
1. 在 mysqld 后加上第一個(gè)參數(shù) --no-defaults ,這個(gè)參數(shù)的作用是通知 mysqld 在啟動(dòng)的時(shí)候不要讀任何參數(shù)文件;
2. 第二個(gè)參數(shù)是 --console,這個(gè)參數(shù)會(huì)把錯(cuò)誤信息輸出到屏幕上,這個(gè)參數(shù)帶來的一個(gè)弊端是所有的信息都輸出到屏幕上,讓屏幕顯得比較亂,但對于我們調(diào)試卻是很方便的;
3. 第三個(gè)參數(shù)是 --log-error-verbosity=3,這個(gè)參數(shù)會(huì)顯示詳細(xì)的日志;
4. 然后再在后面加上有把握的參數(shù),可以一次只加一個(gè)參數(shù),然后啟動(dòng) mysqld,采用排除法逐步找出錯(cuò)誤的參數(shù)。
找到mysql安裝目錄,將其配置文件my.default.ini改名為my.ini,并且將my.ini移至bin目錄下。
請點(diǎn)擊輸入圖片描述
請點(diǎn)擊輸入圖片描述
啟動(dòng)命令行,將目錄切換到mysql安裝目錄的bin目錄下。
請點(diǎn)擊輸入圖片描述
接下來,在命令行執(zhí)行命令:mysqld --initialize --user=mysql --console
請點(diǎn)擊輸入圖片描述
注意,上一個(gè)步驟會(huì)獲得一個(gè)臨時(shí)密碼,需要記錄,之后會(huì)用到。
請點(diǎn)擊輸入圖片描述
接下來在控制臺以命令行輸入:?mysqld --install,進(jìn)行安裝服務(wù)操作。
請點(diǎn)擊輸入圖片描述
之后,在任務(wù)管理器找到“服務(wù)”,啟動(dòng)其中的MYSQL服務(wù)即可。
請點(diǎn)擊輸入圖片描述
之后,輸入命令行mysql -uroot -p,利用之前的臨時(shí)密碼輸入即可登錄數(shù)據(jù)庫成功。
請點(diǎn)擊輸入圖片描述
修改臨時(shí)密碼,設(shè)置密碼:mysqladmin -u USER -p password PASSWORD,注意USER和PASSWORD為自己定義的數(shù)值。
請點(diǎn)擊輸入圖片描述
我遇到同樣的錯(cuò)誤,折騰了好久才摸索出來。網(wǎng)上的解決辦法都試過了,沒有確實(shí)可行的。最終總結(jié)出來,終于解決了。
我的下載的是mysql-5.7.9綠色版出的問題。最終解決過程供你參考:
1、下載的mysql-5.7.9,出現(xiàn)你的問題。試了各種辦法無法解決。有網(wǎng)友說mysql-5.7.9版本有問題。我改下載了5.6.27版本,嘗試不成功。但報(bào)錯(cuò)變?yōu)椋簾o法啟動(dòng)mysql服務(wù),發(fā)生錯(cuò)誤1067。解決辦法:my.ini 添加 tmpdir = D:\mysql-5.6.27-winx64\data。問題解決。
2、后來我對比了mysql-5.7.9與5.6.27,發(fā)現(xiàn)mysql-5.7.9-winx64沒有data目錄,mysql-5.6.27-winx64\data\mysql,存了不少數(shù)據(jù)文件。原來調(diào)試5.7.9的版本時(shí),記得日志報(bào)告一直有mysql.user、mysql.plugin不存在的提示。(原以為這些文件會(huì)自動(dòng)生成)。后來把這個(gè)mysql-5.6.27-winx64\data下的mysql文件夾整個(gè)復(fù)制到5.7.9版本中的同目錄下。問題解決。
網(wǎng)站欄目:我的mysql怎么沒啟動(dòng) mysql啟動(dòng)不了怎么回事
文章轉(zhuǎn)載:http://chinadenli.net/article32/hgohsc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、響應(yīng)式網(wǎng)站、全網(wǎng)營銷推廣、網(wǎng)站改版、外貿(mào)建站、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)