1. 程式人生 > >Linux 裡面 MySQL 出現個人出現的錯誤集合

Linux 裡面 MySQL 出現個人出現的錯誤集合

A.The server quit without updating PID file的錯誤解決方法

1、可能是/usr/local/mysql/data/mysql.pid檔案沒有寫的許可權

解決方法 :給予許可權,執行 “chown -R mysql:mysql /var/data” “chmod -R 755 /usr/local/mysql/data”  然後重新啟動mysqld!

2、可能程序裡已經存在mysql程序
解決方法:用命令“ps -ef|grep mysqld”檢視是否有mysqld程序,如果有使用“kill -9  程序號”殺死,然後重新啟動mysqld!

3、可能是第二次在機器上安裝mysql,有殘餘資料影響了服務的啟動。

解決方法:去mysql的資料目錄/data看看,如果存在mysql-bin.index,就趕快把它刪除掉吧,它就是罪魁禍首了。

4、mysql在啟動時沒有指定配置檔案時會使用/etc/my.cnf配置檔案,請開啟這個檔案檢視在[mysqld]節下有沒有指定資料目錄(datadir)。
解決方法:請在[mysqld]下設定這一行:datadir = /usr/local/mysql/data

5、skip-federated欄位問題
解決方法:檢查一下/etc/my.cnf檔案中有沒有沒被註釋掉的skip-federated欄位,如果有就立即註釋掉吧。

6、錯誤日誌目錄不存在
解決方法:使用“chown” “chmod”命令賦予mysql所有者及許可權


7、selinux惹的禍,如果是centos系統,預設會開啟selinux

解決方法:關閉它,開啟/etc/selinux/config,把SELINUX=enforcing改為SELINUX=disabled後存檔退出重啟機器試試。

B.Can't connect to local MySQL server through socket

1、檢視mysql服務的socket檔案位置:
  mysql socket檔案的位置是在/etc/my.cnf中設定的,cat /etc/my.cnf內容如下:

[mysqld]
datadir=/storage/db/mysql
socket=/storage/db/mysql/mysql.sock
user=mysql

其中socket等於的路徑就是socket檔案的位置,我們只要修改my.cnf檔案,告訴mysql,mysqldump,mysqladmin等mysql服務的socket位置在哪裡就可以。

2、修改my.cnf檔案:
在/etc/my.cnf檔案中新增如下內容,並重啟mysqls服務,即可解決mysql,mysqldump,mysqladmin的“Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'”問題:

[mysqld]
datadir=/storage/db/mysql
socket=/storage/db/mysql/mysql.sock

[mysql]
socket=/storage/db/mysql/mysql.sock

[client]
socket=/storage/db/mysql/mysql.sock

[mysqldump]
socket=/storage/db/mysql/mysql.sock

[mysqladmin]
socket=/storage/db/mysql/mysql.sock

3、php連線mysql服務提示"Can't connect to local MySQL server through socket..."的解決方法
  有時候mysql服務正常執行,使用者名稱密碼也完全正確,使用php的mysql_connect函式卻連線不了mysql,呼叫php的mysql_error()函式提示“Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'”,這是我們需要修改/etc/php.ini檔案。
在/etc/php.ini檔案中"[MySQL]"項下找到"mysql.default_socket",並設定其值指向正確的mysql服務socket檔案即可,如:

[MySQL]
...省略n行...
mysql.default_socket = "/storage/db/mysql/mysql.sock"

4、python連線mysql提示"Can't connect to local MySQL server through socket..."的解決方法:
  在連線mysql資料庫函式中指定socket檔案,如下:

#!/usr/bin/python
from MySQLdb import connect
conn = connect(db="pzy", user="root", host="localhost", unix_socket="/storage/db/mysql/mysql.sock")
cur = conn.cursor()
count=cur.execute("show databases")
print 'there has %s dbs' % count
conn.commit()
conn.close()

5. php pdo連線mysql提示"Can't connect to local MySQL server through socket..."的解決方法:
  同樣在連線字串新增mysql socket檔案的位置即可,如下:

<?php
$dsn = "mysql:host=localhost;dbname=pzy;unix_socket=/storage/db/mysql/mysql.sock";
$db = new PDO($dsn, 'root', '');
$rs = $db->query("SELECT * FROM qrtest");
while($row = $rs->fetch()){
print_r($row);
}
?>

相關推薦

Linux 裡面 MySQL 出現個人出現錯誤集合

A.The server quit without updating PID file的錯誤解決方法 1、可能是/usr/local/mysql/data/mysql.pid檔案沒有寫的許可權 解決方法 :給予許可權,執行 “chown -R mysql:mysql /va

linuxmysql ERROR 2002 (HY000)錯誤解決方法

本人用的的deepin系統 (linux不是windwos哦) 昨天關機的時候報了遺傳錯誤,就預感可能某個程式會出問題,果然,今天來了mysql啟動不了了。 用mysql -u root 連結資料庫報錯 ERROR 2002 (HY000): Can'

linux備份mysql文件並恢復的腳本,以及其中出現錯誤:ERROR: ASCII '

linux備份 表示 RR pytho 簡單 大括號 his 恢復 然而 首先是在網上找了一下教程,代碼很簡單 #!/bin/bash folder=~/test time=`date +%Y%m%d` mysqldump -u user -p pwd -hloca

Linux安裝mysql出現1045,1130錯誤

環境 centos6.8  軟體  mysql5.7.22 首先查詢系統中是否是否有mysql rpm -qa|grep mysql  yum -y remove 貼上查詢出來的檔案 mysql安裝完成登入時報1045,解決辦法 1、開啟etc目錄下my.cnf檔案

window下工具訪問linuxmysql出現 error no 2003 10061錯誤的解決辦法

1、檢視:netstat -an|grep 3306 是空的,說明沒有在偵聽           解決辦法:修改/etc/my.cnf 將其中skip-networking註釋掉,然後執行netstat -an|grep 3306 就可以看到了 2、對於伺服器來說,

記錄Window系統下myeclipes連接linuxmysql出現的一個bug

給賬號 onf flush 問題 info drive strong user BE 記錄myeclipes遠程連接mysql所出現的一個bug 今天在玩框架hibernate時,出現一個非常費解的bug,話不多說,先看bug Access denied for

linux+nginx+phpfpm 訪問出現Access denied錯誤解決方案

技術分享 技術 gpo phpfpm post gin ces alt acc linux上安裝nginx,php-fpm後訪問頁面一直出現Access denied錯誤。 網上搜原因大概如下圖: 我試了第一個方案,然後就好了。linux+nginx+phpfpm 訪問出

[linux]centos7 升級python後出現“No module named yum”錯誤

下載地址 AR rep led x86_64 require pos devel lib 公司服務器重新安裝系統後,手動升級python2.7.5到2.7.15,安裝完python在更新系統python版本的過程中無意刪除了系統自帶的版本,導致後來在執行yum命令的時候出現

linux 安裝mysql 出現 mysql.sock問題解決方法

完成 word 解決 安裝 連接 什麽 service etc mysq mysql 連接數據庫 會出現什麽 mysql.sock的問題 1.首先確定mysql有沒有啟動 service mysql status 因為mysql啟動後才會有mysql.sock文件 2.用

linux/安卓的spi讀寫ADS1256出現讀寫錯誤

這是因為寫的時候要求單個位元組寫的,不能把一個數組裡存多個位元組然後統一一起傳送出去,這樣可能會在傳送忙的時候出錯 ret = write(fd, TxBuf1, 1); if (ret < 0) printf("spi:SPI Write error\n"); ret

linux克隆出現mac地址錯誤

rip scrip ima mac地址 sys 圖片 rule linux克隆 地址 解決辦法: cat /etc/udev/rules.d/70-persistent-net.rules 然後 vi /etc/sysconfig/network-scripts/if

MySQL資料庫有段時間沒有用了,今天使用出現了1067錯誤,程序意外終止。

對於1067錯誤,程序意外終止,系統錯誤。 我試了網上的很多方法,最終皆是失敗而歸,浪費快一天的時間,廢話少說,看解決方案。 解決方案:有位大佬讓我檢視windows日誌檔案,、然後我獲得錯誤資訊如下: InnoDB: Attempted to open a

Linux 安裝mysql出現的問題

1、Linux安裝mysql過程中沒有提示設定密碼,在第一次使用的時候,可以使用/etc/mysql/debian.cnf中的client的使用者名稱和密碼登入修改mysql密碼 mysql> use mysql; Database changed

mysql初次安裝出現1067錯誤解決方法

 我的mysql版本是5.6.12,解壓後,按網上說的建立my.ini檔案,如同你那樣。也遇到你所遇到的問題,找不到答案,快瘋了。 後來想想,為什麼不要自帶的my-default.ini呢。於是去掉my-default.ini 中#註釋的配置。 cmd下執行: mysqld.

python2 連線mysql獲取值出現錯誤TypeError: unsupported operand type(s) for /: 'float' and 'NoneType'

我這是一個獲取實時匯率的方法,剛開始寫法如下就是一直會報一個數據型別錯誤 獲取匯率 def get_rate(self, time): # Where USD is the base currency you want to use url = 'https://v

Linux安裝軟體時出現無法修正錯誤的解決方法

在WIN10子系統裝軟體時,報如下錯誤: 經過查詢資料,解決方法就是更換系統的源: # 1.備份原來的資料來源配置檔案 cp /etc/apt/sources.list /etc/apt/s

Linux下使用selenium時出現'geckodriver' executable needs to be in PATH.錯誤,解決方法

今天想用selenium自動開啟12306網址 程式碼如下: def __init__(self): #建構函式 初始化 self.initmy_url = 'https://kyfw.12306.cn/otn/view/index.html'#登陸成功後的網址

大資料學習第2天----------------linux 安裝mysql 出現安裝依賴問題解決(centos7)

問題:安裝mysql過程中出現的依賴 [[email protected] mysql-5.7.16]# rpm -ivh mysql-community-devel-5.7.16-1.el7.x86_64.rpm warning: mysql-community

安裝mysql後首次登入出現access deny錯誤的解決方法

我的系統是linux ubuntu 7.10,最近新裝好的mysql在進入mysql工具時,總是有錯誤提示:# mysql -uroot -pEnter password:ERROR 1045 (28000): Access denied for user 'root'@'l

Linux下停Tomcat伺服器,出現Connection refused錯誤解決辦法

錯誤內容如下 : 2010-9-19 16:09:58 org.apache.catalina.startup.Catalina stopServer 嚴重: Catalina.stop:  java.net.ConnectException: Connectio