mysql無法運行怎么辦 mysql啟動了不能運行

mysql啟動不了服務啟動不了該怎么辦

一、無法訪問系統(tǒng)資源

成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務,包含不限于網(wǎng)站設計制作、成都網(wǎng)站建設、道里網(wǎng)絡推廣、成都微信小程序、道里網(wǎng)絡營銷、道里企業(yè)策劃、道里品牌公關、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務,您的肯定,是我們最大的嘉獎;成都創(chuàng)新互聯(lián)公司為所有大學生創(chuàng)業(yè)者提供道里建站搭建服務,24小時服務熱線:13518219792,官方網(wǎng)址:m.kartarina.com

MySQL 不能訪問啟動需要的資源是造成而 MySQL 無法啟動的一個常見原因,如:文件,端口等。由于 linux 中用于啟動 mysqld 進程的 mysql 用戶通常是不能登陸的,可以使用類似下面的命令檢查文件的訪問權限。

sudo -u mysql touch /var/lib/mysql/b

找出問題后,修改對應文件或目錄的權限或?qū)僦骱笸ǔ?梢越鉀Q問題。但有時 mysql 用戶有訪問文件和目錄的權限,但仍然會被拒絕訪問,例如下面這個例子:

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 用戶有這個目錄的訪問權限,但創(chuàng)建文件還是失敗,這種情況讓很多人困惑,這個時候通常是 mysqld 進程的訪問被 linux 的 selinux 或 apparmor 給阻止了,大家可以看到創(chuàng)建的表不是在 mysql 的默認目錄下面,因此 selinux 或 apparmor 的 policy 里面沒有包含這個目錄的訪問權限,此時只要對應的修改 policy 就行了,當然把 selinux 或 apparmor 停了也行。

有時雖然對系統(tǒng)資源有訪問的權限,但系統(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

這個故障產(chǎn)生的原因是另外一個 mysqld 進程已經(jīng)啟動并占用了對應的文件。

二、參數(shù)設置錯誤

參數(shù)設置錯誤造成 MySQL 無法啟動的原因也非常常見,此時先要檢查 MySQL 啟動時會調(diào)用的參數(shù),下面的命令可以查詢 MySQL 啟動時調(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)用順序,我們就可以檢查對應的參數(shù)文件,找出其中的錯誤,如果覺得參數(shù)文件的可讀性不強,可以使用下面的命令顯示 mysqld 程序?qū)⒁{(diào)用的參數(shù):

$ mysqld --print-defaults

/usr/sbin/mysqld would have been started with the following arguments:

......

注意這個命令顯示完參數(shù)后就退出,不會真正運行 mysqld。這個命令和 my_print_defaults mysqld 完全是等價的,只不過后者的顯示方式是一行一個參數(shù)。

然后開始對可疑的參數(shù)進行調(diào)試,我個人喜歡加的參數(shù)和順序如下:

1. 在 mysqld 后加上第一個參數(shù) --no-defaults ,這個參數(shù)的作用是通知 mysqld 在啟動的時候不要讀任何參數(shù)文件;

2. 第二個參數(shù)是 --console,這個參數(shù)會把錯誤信息輸出到屏幕上,這個參數(shù)帶來的一個弊端是所有的信息都輸出到屏幕上,讓屏幕顯得比較亂,但對于我們調(diào)試卻是很方便的;

3. 第三個參數(shù)是 --log-error-verbosity=3,這個參數(shù)會顯示詳細的日志;

4. 然后再在后面加上有把握的參數(shù),可以一次只加一個參數(shù),然后啟動 mysqld,采用排除法逐步找出錯誤的參數(shù)。

怎么解決mysql服務無法啟動的問題

解決方法一:

1、打開my.ini文件,找到default-storage-engine=InnoDB這一行,把它改成default-storage-engine=MyISAM;

2、刪除在MySQL安裝目錄下的Data目錄中的ib_logfile0和ib_logfile1;

3、找到在配置MySQL服務器時指定的InfoDB目錄刪除掉ibdata1

根據(jù)my.ini文件中:#*** INNODB Specific options *** innodb_data_home_dir="D:/";

4、重新啟動MySQL的Service。

解決方法二:

把windows目錄下,my.ini文件刪除,重裝mysql,服務啟動成功。

一次解決MySQL無法啟動的全過程

啟動Mysql提示ERROR! The server quit without updating PID file (/usr/local/var/mysql/xxxx.local.pid).

1、查看mysql錯誤日志:打開/usr/local/var/mysql/xxxx.err或者xxxx.local.err文件。

2、問題應該是某個程序占用了mysql的默認端口3306。

3、查看端口使用情況lsof -i:3306,發(fā)現(xiàn)是一個用戶名為_mysql啟動了mysqld指令占用了3306,感覺現(xiàn)象非常奇怪,不清楚為什么會有這個用戶組,為什么會啟動mysqld,由于這個電腦是公司其他同事轉(zhuǎn)移資產(chǎn)到的我名下,所以有可能是之前用戶或者公司it裝了什么服務導致的。

4、首先嘗試干掉進程:sudo kill xxxx,結(jié)果發(fā)現(xiàn)當kill后,還會重新啟動。

5、嘗試修改mysql默認啟動端口,Baidu上有人告訴修改/Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist文件

添加string--port=3307/string保存,先重新啟動mysql服務,發(fā)現(xiàn)問題依然存在,發(fā)現(xiàn)配置沒有起作用,默認端口依然是3306,然后考慮重新啟動電腦,看看是否可以修改占用默認端口的配置。

6、重啟后再次查看3306端口占用情況,發(fā)現(xiàn)確實不存在了。但是發(fā)現(xiàn)啟動mysql服務時,依然存在問題:

仔細觀察發(fā)現(xiàn),這個占用和plist中的mysql配置一樣的,所以可以確定每次啟動計算機后,會按默認配置執(zhí)行一個mysqld。

7、不清楚為什么會按com.oracle.oss.mysql.mysqld.plist配置執(zhí)行mysqld,于是把注意力放在了Mac啟動上。

8、Mac的啟動原理是:

看到這里就明白了,原來LaunchDaemons里面放的是Mac啟動時的一些啟動服務,

9、System/Library和/Library和~/Library目錄的區(qū)別:

10、System/Library和/Library和~/Library目錄的區(qū)別:

11、有了上面的結(jié)果,于是把注意力放在了com.oracle.oss.mysql.mysqld.plist上,每個Mac啟動中都有么,這個是如何添加的。首先查看了家里的其他蘋果電腦,發(fā)現(xiàn)都沒有這個plist文件,于是開始研究這個文件的產(chǎn)生原因。

12、經(jīng)過Baidu懷疑這個文件應該是之前用dmg安裝包安裝的mysql產(chǎn)生的,在設置中也發(fā)現(xiàn)了殘留信息

于是果斷把自動啟動去掉,重啟計算機。

13、重啟后,發(fā)現(xiàn)無論是3306還是3307端口上都沒有mysql服務了,于是運行mysql.server start,這次終于看見了Starting MySQL . SUCCESS!

14、刪除com.oracle.oss.mysql.mysqld.plist文件,重啟電腦后,發(fā)現(xiàn)設置中仍然還有MySQL的控制選項。

15、MySQL dmg安裝方式的卸載方法:

至此,這個問題算是完美解決了。

mysql 服務無法啟動是什么原因?

打開mysql server instance config ,然后,單擊next,然后選擇remove server instance,刪除后,然后卸載mysql程序,卸載完成后。打開 Documents and Settings\All Users目錄,在里面有個application data文件夾,如果沒有的話,那是他隱藏了,(工具----文件夾選項----顯示隱藏的文件),打開application data 文件夾,里面有個mysql文件夾,刪除即可,然后重新安裝,絕對成功。

去mysql5\data里面看一下.err日志,會有提示的。

1、可能端口被占用

2、可能my.cnf配置了錯誤的參數(shù)

3、可能沒有初始數(shù)據(jù)庫

解壓后的文件有默認的配置文件(my-default.ini),但是默認的配置文件不好用,使用的時候會出現(xiàn)很多問題,比如里面的漢字全是亂碼等。所以需要配置個人默認配置文件:在解壓后的路徑下新建文件:my.ini,將以下代碼復制進去,代碼中出現(xiàn)兩次D:\mysql-5.7.17-winx64,這是我的MySQL的解壓路徑,各位根據(jù)自己的路徑替換掉即可。至此,MySQL可以執(zhí)行安裝了。

網(wǎng)站標題:mysql無法運行怎么辦 mysql啟動了不能運行
URL標題:http://m.kartarina.com/article4/dodecie.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導航外貿(mào)網(wǎng)站建設手機網(wǎng)站建設做網(wǎng)站品牌網(wǎng)站制作標簽優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設計
主站蜘蛛池模板: 日韩网红少妇无码视频香港| 精品无码一区二区三区爱欲| 免费看无码自慰一区二区| 成人无码区免费视频观看| 国产成人无码精品久久久免费| 午夜亚洲AV日韩AV无码大全| 色综合99久久久无码国产精品| 亚洲中文字幕无码久久2017| 中文无码字慕在线观看| 日韩综合无码一区二区| 无码日本精品XXXXXXXXX| 亚洲AV综合色区无码一区| 精品人妻中文无码AV在线| 在线看无码的免费网站| 久久亚洲精品无码观看不卡| 亚洲国产精品无码久久久| 亚洲国产精品无码成人片久久| 一本大道无码人妻精品专区| 无码国产激情在线观看| 久久久久久人妻无码| 国产成A人亚洲精V品无码性色| 久久无码AV中文出轨人妻| 无码日韩精品一区二区免费| 久久久久久无码Av成人影院| 亚洲av福利无码无一区二区 | 日韩精品无码一区二区三区免费| 性色AV蜜臀AV人妻无码| 精品亚洲成A人无码成A在线观看| 久久无码专区国产精品s| 国产成人无码一区二区三区 | 亚洲国产精品成人AV无码久久综合影院 | 亚洲日韩精品A∨片无码 | 成人无码AV一区二区| 国产成人无码区免费A∨视频网站| 精品欧洲av无码一区二区三区| 色综合久久久久无码专区 | 中文人妻无码一区二区三区| 免费无码又爽又刺激一高潮| 亚洲一区二区三区无码中文字幕| 国产综合无码一区二区三区| 中文字幕无码乱人伦|