導航:首頁 > 程序命令 > mysql修復命令

mysql修復命令

發布時間:2022-09-24 13:25:48

php 如何優化和修復MySQL

優化mysql,實際上就是優化程序,你可以採用緩存技術,對你所要訪問的數據進行數據緩存,比如利用數組。修復mysql的話沒有直接
命令可以修復,除非你對數據進行了備份,然後利用php程序進行數據重寫。或者利用phpmyadmin進行資料庫修復!

② mysql運行一段時間,TOMCAT伺服器就會一直報這個錯誤,修改了MYSQL資料庫的配置,但沒有用,在線等

一、Can't connect to MySQL server on 'localhost' (10061)
翻譯:不能連接到 localhost 上的mysql
分析:這說明「localhost」計算機是存在的,但在這台機器上卻沒提供MySQL服務。
需要啟動這台機器上的MySQL服務,如果機子負載太高沒空相應請求也會產生這個錯誤。
解決:既然沒有啟動那就去啟動這台機子的mysql。如果啟動不成功,多數是因為你的my.ini配置的有問題。重新配置其即可。
如果覺得mysql負載異常,可以到mysql/bin 的目錄下執行mysqladmin -uroot -p123 processlist來查看mysql當前的進程。
二、Unknown MySQL Server Host 'localhosadst' (11001)
翻譯:未知的MySQL伺服器 localhosadst
分析:伺服器 localhosasdst 不存在。或者根本無法連接
解決:仔細檢查自己論壇下面的 ./config.inc.php 找到$dbhost重新設置為正確的mysql 伺服器地址
三、Access denied for user: 'roota@localhost' (Using password: YES)
翻譯:用戶 roota 訪問 localhost 被拒絕(沒有允許通過)
分析:造成這個錯誤一般資料庫用戶名和密碼相對mysql伺服器不正確
解決:仔細檢查自己論壇下面的 ./config.inc.php 找到$dbuser、$dbpw核實後重新設置保存即可。
四、Access denied for user: 'red@localhost' to database 'newbbs'
翻譯:用戶 red 在localhost 伺服器上沒有許可權操作資料庫newbbs
分析:這個提示和問題三是不同的。那個是在連接資料庫的時候就被阻止了,而這個錯誤是在對資料庫進行操作時引起的。比如在select update等等。這個是因為該用戶沒有操作資料庫相應的權力。比如select 這個操作在mysql.user.Select_priv里記錄 Y 可以操作N 不可以操作。
解決:如果是自己的獨立主機那麼更新mysql.user 的相應用戶記錄,比如這里要更新的用戶為red 。或者直接修改 ./config.inc.php 為其配置一個具有對資料庫操作許可權的用戶
或者通過如下的命令來更新授權grant all privileges on dbname.* to 'user'@'localhost' identified by 'password』
提示:更新了mysql庫中的記錄一定要重啟mysql伺服器才能使更新生效
FLUSH PRIVILEGES;
五、No Database Selected
翻譯:沒有資料庫被選擇上
分析:產生的原因有兩種
config.inc.php 裡面$dbname設置的不對。致使資料庫根本不存在,所以在 $db->select_db($dbname); 時返回了false
和上面問題四是一樣的,資料庫用戶沒有select許可權,同樣會導致這樣的錯誤。當你發現config.inc.php的設置沒有任何問題,但還是提示這個錯誤,那一定就是這種情況了。
解決:對症下葯
打開config.inc.php 找到$dbname核實重新配置並保存
同問題四的解決方法
六、Can't open file: 'xxx_forums.MYI'. (errno: 145)
翻譯:不能打開xxx_forums.MYI
問題分析:
這種情況是不能打開 cdb_forums.MYI 造成的,引起這種情況可能的原因有:
1、伺服器非正常關機,資料庫所在空間已滿,或一些其它未知的原因,對資料庫表造成了損壞。
2、類 unix 操作系統下直接將資料庫文件拷貝移動會因為文件的屬組問題而產生這個錯誤。
解決方法:
1、修復數據表
可以使用下面的兩種方式修復數據表:(第一種方法僅適合獨立主機用戶)
1)使用 myisamchk ,MySQL 自帶了專門用戶數據表檢查和修復的工具 —— myisamchk 。更改當前目錄到 MySQL/bin 下面,一般情況下只有在這個下面才能運行 myisamchk 命令。常用的修復命令為:myisamchk -r 數據文件目錄/數據表名.MYI;
2)通過 phpMyAdmin 修復, phpMyAdmin 帶有修復數據表的功能,進入到某一個表中後,點擊「操作」,在下方的「表維護」中點擊「修復表」即可。
注意:以上兩種修復方式在執行前一定要備份資料庫。
2、修改文件的屬組(僅適合獨立主機用戶)
1)復制資料庫文件的過程中沒有將資料庫文件設置為 MySQL 運行的帳號可讀寫(一般適用於 Linux 和 FreeBSD 用戶)。
七、Table 'test.xxx_sessions' doesn't exist
翻譯:xxxxx表不存在
分析:在執行sql語句時沒有找到表,比如:SELECT * FROM xxx_members WHERE uid=』XX』 這里如果表xxx_members不存在於$dbname庫里,那麼就會提示這個錯誤。具體可分為以下三種情況來討論:
安裝插件或者hack時修改了程序文件,而忘記了對資料庫作相應的升級。
後台使用了不完全備份,導入數據時沒有導入到已經安裝了相應版本的論壇的資料庫中。
解決: 同樣對症下葯,不同的原因不同的處理方法。
仔細對照插件作者提供的安裝說明,把遺漏的對資料庫的操作補上,如果仍然不能解決問題,那麼應該懷疑該插件的可用性了。去咨詢一下插件作者,或者將其卸載。
不要張冠李戴,多大的腳就穿多大的鞋。總之使得程序文件和資料庫配套即可.
八、Unknown column 'column_name' in 'field list'
翻譯:未知的欄位名 column_name
分析:在執行sql語句是出現了指定表中沒有的欄位名稱,就會出現這個錯誤。具體導致的原因可分為以下兩種
安裝插件或者hack時修改了程序文件,而忘記了對資料庫作相應的升級。
程序文件和資料庫不配套,比如d2.5的資料庫配置給d4.1的程序來用肯定會出現這個錯誤。
解決: 導致的原因和問題八的1和 3是相同的,所以解決方法也一樣。
九、You have an error in your SQL syntax
翻譯:有一個語法錯誤在你的sql中
分析:論壇標準的程序是沒有sql語法錯誤的。所以造成這個錯誤的原因一般就兩類
安裝插件或擅自修改程序。
不同的資料庫版本資料庫導出導入,比如MySQL4.1的數據在導出的語句包含了MySQL4.0沒有的功能,像字元集的設定,這時如果將這些sql導入到MySQL4.0的時候就會產生sql語法錯誤。
解決:
仔細檢查看到底是哪裡的錯誤,將其修正,實在不行就用標准程序把出錯的程序替換。
在資料庫備份的時候要留意,如果不打算倒入到其他版本的mysql中則不用特殊考慮,反之要特殊的設定。使用DZ4.1的後台數據備份,可以按照提示去設定想要的格式。獨立主機的也可以在到處的時候將其導出為mysql4.0的格式。
mysqlmp -uroot -p --default-character-set=latin1 --set-charset=gbk --skip-opt databse > test.sql
十、Duplicate entry 'xxx' for key 1
翻譯:插入 xxx 使索引1重復
分析:索引如果是primary unique這兩兩種,那麼數據表的數據對應的這個欄位就必須保證其每條記錄的唯一性。否則就會產生這個錯誤。
一般發生在對資料庫寫操作的時候,例如Discuz!4.1論壇程序要求所有會員的用戶名username必須唯一,即username的索引是 unique,這時如果強行往cdb_members表裡插入一個已有的username的記錄就會發上這個錯誤,或者將一條記錄的username更新 為已有的一個username。
改變表結構的時候也有可能導致這個錯誤。例如 Discuz!4.0論壇的資料庫中cdb_members.username 的索引類型是index這個時候是允許有相同username的記錄存在的,在升級到4.1的時候,因為要將username的索引由原來的index變 為unique。如果這時cdb_members里存在有相同的username的記錄,那麼就會引發這個錯誤。
導出數據據時有時會因為一些原因(作者目前還不清楚)導致同一條記錄被重復導出,那麼這個備份數據在導入的時候出現這個錯誤是在所難免的了。
修改了auto_increment的值,致使「下一個 Autoindex」為一條已經存在的記錄
解決: 兩種思路,一是破壞掉唯一性的索引。二是把重復的數據記錄幹掉,只保留一條。很顯然第一種思路是不可取的。那麼按照二的思路我們得出以下幾種解決方法,對應上面的i ii iii

按照錯誤提示里的信息到資料庫中將重復的記錄刪除,僅保留一條即可。之後繼續執行升級操作。
這種情況發生的概率很小,可以用文本編輯器打開備份文檔,查找重復的信息。將其多餘的拿掉,僅保留一條即可。
查詢出表中auto_increment最大的一條記錄,設置auto_incerment比其大一即可。
PS:repaire table "表名「,可以暫時解決問題。
十一、 Duplicate key name 'xxx'
翻譯:索引名重復
分析:要創建的索引已經存在了,就會引發這個錯誤,這個錯誤多發生在升級的時候。可能是已經升級過的,重復升級引起的錯誤。也有可能是之前用戶擅自加的索引,剛好與升級文件中的所以相同了。
解決: 看看已經存在的索引和要添加的索引是否一樣,一樣的話可以跳過這條sql語句,如果不一樣那麼現刪除已存在的所以,之後再執行。
十二、 Duplicate column name 'xxx'
翻譯:欄位名xxx重復
分析:添加的欄位xxx已經存在,多發生在升級過程中,與問題十二的產生是一樣的。
解決: 看一下已經存在的欄位是否和將要添加的欄位屬性完全相同,如果相同則可以跳過不執行這句sql,如果不一樣則刪除掉這個欄位。之後繼續執行升級程序。
十三、 Table 'xxx' already exists
翻譯:數據表xxx已經存在
分析:xxx表已經存在於庫中,再次試圖創建這個名字的表就會引發這個錯誤。同樣多發生在論壇的升級中。類似於問題十二。
解決: 看看已經存在的表是否和將要創建的表完全一樣,一樣的話可以跳過不執行這個sql,否則請將存在的表先刪除,之後繼續執行升級文件。
十四、 Can't create database 'xxx'. Database exists
翻譯:不能創建資料庫xxx,資料庫已經存在
分析:一個mysql下面的資料庫名稱必須保證唯一性,否則就會有這個錯誤。
解決:把已經存在的資料庫改名或者把將要創建的資料庫改名,總之不讓他們的名稱沖突。
十五、 小結(針對問題 11\12\13\14\15)
此類問題錯誤提示中都暗藏一個關鍵詞plicate(重復)
那麼對於mysql資料庫來說什麼東西是不能重復的呢?
資料庫 database
同一個資料庫下數據表 table
同一個數據表下欄位 column
同一個數據表下索引 key
同一個數據表在索引唯一(UNIQUE PRIMARY)的情況下記錄中的這些欄位不可以重復
十六、Unknown system variable 'NAMES'
翻譯:未知的系統變數NAMES
分析:Mysql版本不支持字元集設定,此時強行設定字元集就會出現這個錯誤。
解決: 將sql語句中的SET NAMES 『xxx』 語句去掉
十七、 Lost connection to MySQL server ring query
翻譯:MySQL伺服器失去連接在查詢期間
分析:遠程連接資料庫是有時會有這個問題。MySQL伺服器在執行一條sql語句的時候失去了連接造成的。
解決: 一般不需要怎麼去處理,如果頻繁的出現那麼考慮改善硬體環境。
十八、User 'red' has exceeded the 'max_updates' resource (current value: 500)
翻譯:msql用戶red已經超過了'max_updates'(最大更新次數),'max_questions'(最大查詢次數),'max_connections'(最大連接數),當前設定為500
分析:在mysql資料庫的下有一個庫為mysql,它其中有一個表為user這裡面的紀錄每一條都對應為一個mysql用戶的授權。其中欄位 max_questions max_updates max_connections分別記錄著最大查詢次數 最大更新數 最大連接數,當目前的任何一個參數大於任何一個設定的值就會產生這個錯誤。
解決: 獨立主機用戶可以直接修改授權表。修改完之後重啟mysql或者跟新授權表,進入mysql提示符下執行
FLUSH PRIVILEGES;
記得後面要有分號』;』
虛擬主機的用戶如果總是出現這個問題可找空間商協商解決。
十九、Too many connections (1040)鏈接過多
翻譯:達到最大連接數
問題分析:
連接數超過了mysql設置的值,與max_connections 和wait_timeout 都有關系。wait_timeout的值越大,連接的空閑等待就越長,這樣就會造成當前連接數越大
解決方法:
1.虛擬主機用戶請聯系空間商優化 MySQL 伺服器的配置;
2.獨立主機用戶請聯系伺服器管理員優化 MySQL 伺服器的配置,可參考:
修改 MySQL 配置文件 my.ini 或者 my.cnf 中的參數:
max_connections= 1000
wait_timeout = 10
修改後重啟 MySQL ,如果經常性的報此錯誤,請做一下伺服器的整體優化。
二十、There is no such grant defined for user '%s' on host '%s'
錯誤編號:1141
問題分析:
MySQL 當前用戶無權訪問資料庫。
解決方法:
1、虛擬主機用戶請聯系空間商,確認給你提供的帳號是否有授權資料庫的許可權。
2、獨立主機用戶請聯系伺服器管理員,確認給您提供的資料庫帳號是否有管理此資料庫的許可權。
二十一、Error on rename of '%s' to '%s' (errno: %d)
error.:1025
問題分析:
請檢查一下您的程序是否有修改資料庫表名的語句。
解決方法:
1.請檢查您的程序中哪些地方需要修改資料庫表名;
2.如果您的實際應用確實需要修改到資料庫表名的話,請聯系空間商或者伺服器管理員給您開放修改庫名的許可權和伺服器本身是否正常。
二十二、Error reading file '%s' (errno: %d)
error.:1023
問題分析:
資料庫文件不能被讀取。
解決方法:
1.虛擬主機用戶請聯系空間商查看資料庫是否完好。
2.獨立主機用戶請聯系伺服器管理員檢查一下 MySQL 本身是否正常, MySQL 是否可以讀取文件,Linux 用戶可以檢查一下 MySQL 的資料庫文件的屬主是否正確以及本身的文件是否損壞。
二十三、Host '*****' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'
error.:1129
問題分析:
資料庫出現異常,請重啟資料庫。
解決方法:
1. 由於存在很多連接錯誤,主機'****'被屏蔽,虛擬主機用戶請聯系空間商處理,獨立主機用戶請聯系伺服器管理員,在 MySQL 的命令控制台下執行'mysqladmin flush-hosts'解除屏蔽即可,或者重啟 MySQL 資料庫
二十四、dropping database (can't delete '%s', errno: %d)
error.:1009
問題分析:
不能刪除資料庫文件,導致刪除資料庫失敗。
解決方法:
1.檢查您使用的資料庫管理帳號是否有許可權刪除數據。
2.檢查資料庫是否存在。
二十五、Got error 28 from table handler
error.:1030
問題分析:
資料庫所在磁碟空間已滿。
解決方法:
1.虛擬主機用戶請聯系空間商增加 MySQL 所在的磁碟空間或者清理一些無用文件;
2.獨立主機用戶請聯系伺服器管理員增加 MySQL 所在的磁碟空間或者清理一些無用文件
二十六、Can't create a new thread; if you are not out of available memory, you can consult the manual for a possible OS-dependent bug。
error.:11/35
問題分析:
資料庫伺服器問題,資料庫操作無法創建新線程。一般是兩個原因:
1.伺服器系統內存溢出。
2.環境軟體損壞或系統損壞。
解決方法:
1.虛擬主機用戶請聯系下空間商資料庫伺服器的內存和系統是否正常。
2.獨立主機用戶請聯系伺服器管理員檢查伺服器的內存和系統是否正常,如果伺服器內存緊張,請檢查一下哪些進程消耗了伺服器的內存,同時考慮是否增加伺服器的內存來提高整個的負載能力。
二十七、Error: Client does not support authentication protocol requested by server; consider upgrading MySQL client
error.:1251
問題分析:
如果你升級 MySQL 到 4.1 以上版本後遇到以上問題,請先確定你的 MySQL Client 是 4.1 或者更高版本( Windows 下有問題你就直接跳到下面看解決方法了,因為 MySQL 在 Windows 是 client 和 server 一起裝上了的)。
解決方法:
1. Windows 平台
主要是改變連接 MySQL 的帳戶的加密方式,MySQL 4.1/5.0 是通過 PASSWORD 這種方式加密的。可以通過以下兩種方法得到解決:
1) mysql->SET PASSWORD FOR 'some_user'@'some_host'=OLD_PASSWORD('new_password');
2) mysql->UPDATE mysql.user SET Password=OLD_PASSWORD('new_password') WHERE Host='some_host' AND User='some_user';
2. Linux/Unix 平台
Linux 平台下首先確定是否安裝過 MySQL 的客戶端,這個用 rpm 安裝很簡單,Linux 代碼為:
rpm -ivh MySQL-client-4.1.15-0.i386.rpm
然後在編譯 php 的時候要加上:
--with-mysql=/your/path/to/mysql
一般情況下都可以解決。如果還出現這種錯誤,可以按照下面的方法來做:
mysql->SET PASSWORD FOR 'some_user'@'some_host'=OLD_PASSWORD('new_password');
mysql->UPDATE mysql.user SET Password=OLD_PASSWORD('new_password') WHERE Host='some_host' AND User='some_user';
二十八、Error: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'
error.:2002
問題分析:
出現這個錯誤一般情況下是因為下面兩個原因:
1.MySQL 伺服器沒有開啟。
2.MySQL 伺服器開啟了,但不能找到 socket 文件。
解決方法:
1.虛擬主機用戶,請聯系空間商確認資料庫是否正常啟動。
2.獨立主機用戶,請檢查一下 MySQL 服務是否已經開啟,沒有開啟,請啟動 MySQL 服務;如果已經開啟,並且是 Linux 系統,請檢查一下 MySQL 的 socket 的路徑,然後打開 config.inc.php 找到
$dbhost = 'localhost'; 在 hostname 後面加冒號『:』和 MySQL 的 socket 的路徑。
比如 MySQL 伺服器為 localhost
MySQL 的 socket 的路徑為 /tmp/mysql.sock
那麼就改成如下:
$dbhost = 'localhost:/temp/mysql.sock';
二十九、Can't connect to MySQL server on 'localhost'
error.:2003
問題分析:
MySQL 服務沒有啟動,一般是在異常的情況下 MySQL 無法啟動導致的,比如無可用的磁碟空間,my.ini 里 MySQL 的 basedir 路徑設置錯誤等。
解決方法:
1.檢查磁碟空間是否還有剩餘可用空間,盡量保持有足夠的磁碟空間可用。
2.檢查 my.ini 里的 basedir 等參數設置是否正確,然後重新啟動下 MySQL 服務。
三十、Lost connection to MySQL server ring query
error.:2013
問題分析:
資料庫查詢過程中丟失了與 MySQL 伺服器的連接。
解決方法:
1.請確認您的程序中是否有效率很低的程序,比如某些插件,可以卸載掉插件,檢查一下伺服器是否正常;
2.伺服器本身資源緊張,虛擬主機用戶請聯系空間商確認,獨立主機用戶請聯系伺服器管理員,檢查一下伺服器是否正常。
三十一、Got a packet bigger than \'max_allowed_packet\' bytes
錯誤編號:1153
問題分析:調整了 Mantis 的上傳附件的大小卻沒有調整 MySQL 的配置文件。
解決辦法:
1、獨立主機用戶請按照以下方法調整:
查找 MySQL 的配置文件(my.cnf 或者 my.ini)
在 [mysqld] 部分添加一句(如果存在,調整其值就可以):
max_allowed_packet=10M
重啟 MySQL 服務就可以了。這里設置的是 10MB。
2、虛擬主機用戶請聯系空間商調整此參數。

③ Mysql常見的幾個錯誤問題及解決方法

一、Can』t connect to MySQL server on 『localhost』 (10061)
翻譯:不能連接到 localhost 上的mysql
分析:這說明「localhost」計算機是存在的,但在這台機器上卻沒提供MySQL服務。
需要啟動這台機器上的MySQL服務,如果機子負載太高沒空相應請求也會產生這個錯誤。
解決:既然沒有啟動那就去啟動這台機子的mysql。如果啟動不成功,多數是因為你的my.ini配置的有問題。重新配置其即可。
如果覺得mysql負載異常,可以到mysql/bin 的目錄下執行mysqladmin -uroot -p123 processlist來查看mysql當前的進程。

二、Unknown MySQL Server Host 『localhosadst』 (11001)
翻譯:未知的MySQL伺服器 localhosadst
分析:伺服器 localhosasdst 不存在。或者根本無法連接
解決:仔細檢查自己論壇下面的 ./config.inc.php 找到$dbhost重新設置為正確的mysql 伺服器地址。

三、Access denied for user: 『roota@localhost』 (Using password: YES)
翻譯:用戶 roota 訪問 localhost 被拒絕(沒有允許通過)
分析:造成這個錯誤一般資料庫用戶名和密碼相對mysql伺服器不正確
解決:仔細檢查自己論壇下面的 ./config.inc.php 找到$dbuser、$dbpw核實後重新設置保存即可。

四、Access denied for user: 『red@localhost』 to database 『newbbs』
翻譯:用戶 red 在localhost 伺服器上沒有許可權操作資料庫newbbs
分析:這個提示和問題三是不同的。那個是在連接資料庫的時候就被阻止了,而這個錯誤是在對資料庫進行操作時引起的。比如在select update等等。這個是因為該用戶沒有操作資料庫相應的權力。比如select 這個操作在mysql.user.Select_priv里記錄 Y 可以操作N 不可以操作。
解決:如果是自己的獨立主機那麼更新mysql.user 的相應用戶記錄,比如這里要更新的用戶為red 。或者直接修改 ./config.inc.php 為其配置一個具有對資料庫操作許可權的用戶
或者通過如下的命令來更新授權grant all privileges on dbname.* to 『user』@』localhost』 identified by 『password』
提示:更新了mysql庫中的記錄一定要重啟mysql伺服器才能使更新生效
FLUSH PRIVILEGES;

五、No Database Selected
翻譯:沒有資料庫被選擇上
分析:產生的原因有兩種
config.inc.php 裡面$dbname設置的不對。致使資料庫根本不存在,所以在 $db->select_db($dbname); 時返回了false
和上面問題四是一樣的,資料庫用戶沒有select許可權,同樣會導致這樣的錯誤。當你發現config.inc.php的設置沒有任何問題,但還是提示這個錯誤,那一定就是這種情況了。
解決:對症下葯
打開config.inc.php 找到$dbname核實重新配置並保存
同問題四的解決方法

六、Can』t open file: 『xxx_forums.MYI』. (errno: 145)
翻譯:不能打開xxx_forums.MYI
問題分析:
這種情況是不能打開 cdb_forums.MYI 造成的,引起這種情況可能的原因有:
1、伺服器非正常關機,資料庫所在空間已滿,或一些其它未知的原因,對資料庫表造成了損壞。
2、類 unix 操作系統下直接將資料庫文件拷貝移動會因為文件的屬組問題而產生這個錯誤。
解決方法:
1、修復數據表
可以使用下面的兩種方式修復數據表:(第一種方法僅適合獨立主機用戶)
1)使用 myisamchk ,MySQL 自帶了專門用戶數據表檢查和修復的工具 —— myisamchk 。更改當前目錄到 MySQL/bin 下面,一般情況下只有在這個下面才能運行 myisamchk 命令。常用的修復命令為:myisamchk -r 數據文件目錄/數據表名.MYI;
2)通過 phpMyAdmin 修復, phpMyAdmin 帶有修復數據表的功能,進入到某一個表中後,點擊「操作」,在下方的「表維護」中點擊「修復表」即可。
注意:以上兩種修復方式在執行前一定要備份資料庫。

④ mysql刪除資料庫後怎麼恢復

1.
使用php腳本刪除資料庫,php使用
mysql_query
函數來創建或者刪除
mysql
資料庫;
2.
使用
mysqladmin
刪除資料庫;
3.
使用
mysqladmin
刪除資料庫;
使用普通用戶登陸mysql伺服器,你可能需要特定的許可權來創建或者刪除
mysql
資料庫。所以我們使用root用戶登錄,root用戶擁有最高許可權,可以使用
mysql
mysqladmin
命令來創建資料庫。
在刪除資料庫過程中,務必要十分謹慎,因為在執行刪除命令後,所有數據將會消失。
4.
使用php腳本刪除資料庫;
php使用
mysql_query
函數來創建或者刪除
mysql
資料庫。bool
mysql_query(
sql,
connection
);該函數有兩個參數,在執行成功時返回
true,否則返回
false。

⑤ 如何使用phpmyadmin工具進行修復MySQL資料庫表操作

有兩種方法,一種方法使用使用MySQL提供的多個myisamchk, isamchk數據檢測恢復工具。另一種方法是MySQL的check table和repair table 的sql語句,使用起來比較簡便。 一、myisamchk, isamchk 其中myisamchk適用於MYISAM類型的數據表,而isamchk適用於ISAM類型的數據表。這兩條命令的主要參數相同,一般新的系統都使用MYISAM作為預設的數據表類型,這里以myisamchk為例子進行說明。當發現某個數據表出現問題時可以使用: myisamchk tablename.MYI 進行檢測,如果需要修復的話,可以使用: myisamchk -of tablename.MYI 關於myisamchk的詳細參數說明,可以參見它的使用幫助。需要注意的時在進行修改時必須確保MySQL(和PHP搭配之最佳組合)伺服器沒有訪問這個數據表,保險的情況下是最好在進行檢測時把MySQL(和PHP搭配之最佳組合)伺服器Shutdown掉。 另外可以把下面的命令放在你的rc.local裡面啟動MySQL(和PHP搭配之最佳組合)伺服器前: 1.[ -x /tmp/MySQL(和PHP搭配之最佳組合).sock ] && /pathtochk/myisamchk -of /DATA_DIR/*/*.MYI 其中的/tmp/MySQL(和PHP搭配之最佳組合).sock是MySQL(和PHP搭配之最佳組合)監聽的Sock文件位置,對於使用RPM安裝的用戶應該是/var/lib/MySQL(和PHP搭配之最佳組合)/MySQL(和PHP搭配之最佳組合).sock,對於使用源碼安裝則是/tmp/MySQL(和PHP搭配之最佳組合).sock可以根據自己的實際情況進行變更,而pathtochk則是myisamchk所在的位置,DATA_DIR是你的MySQL(和PHP搭配之最佳組合)資料庫存放的位置。 需要注意的時,如果你打算把這條命令放在你的rc.local裡面,必須確認在執行這條指令時MySQL伺服器必須沒有啟動! 檢測修復所有資料庫(表) MySQL(和PHP搭配之最佳組合)check -A -o -r -p 二、check table 和 repair table 登陸MySQL終端: MySQL -uxxxxx -p dbname 1.> check table tabTest; 如果出現的結果說Status是OK,則不用修復,如果有Error,可以用: 1.> repair table tabTest; 進行修復,修復之後可以在用check table命令來進行檢查。在新版本的phpMyAdmin裡面也可以使用check/repair的功能。

⑥ navicat for mysql中如何設置自動修復崩潰的數據表

jb51_tablename是jb51_tablename.MYD的名稱。運行以下就可以了。

有的時候因為掉電或者其他原因導致資料庫損壞,我們可以使用mysql自帶的mysqlcheck命令來快速修復所有的資料庫或者特定的資料庫;例如
檢查優化並修復所有的資料庫用:
1.先在運行中輸入CMD,啟動命令行.
2.進入Mysql的Bin目錄:E:\Program Files\MySQL\MySQL Server 5.0\bin,如果不知道如何進入別的目錄,就要參考網上的資料補習基礎知識了.
常見方式:

⑦ mysqlcheck 命令會不會把資料庫弄壞

mysqlcheck修復命令 :
mysqlcheck客戶端可以檢查和修復MyISAM表。它還可以優化和分析表。mysqlcheck的功能類似myisamchk,但其工作不同。主 要差別是當mysqld伺服器在運行時必須使用mysqlcheck,而myisamchk應用於伺服器沒有運行時。使用mysqlcheck的好處是不 需要停止伺服器來檢查或修復表。
Mysqlcheck為用戶提供了一種方便的使用SQL語句CHECK TABLE、REPAIR TABLE、ANALYZE TABLE和OPTIMIZE TABLE的方式。它確定在要執行的操作中使用使用哪個語句,然後將語句發送到要執行的伺服器上。

⑧ 怎樣修復mysql表

1. mysql原生SQL命令: repair

即執行REPAIR TABLE SQL語句

語法:REPAIR TABLE tablename[,tablename1...] [options]

示例: mysql> use database xxx;

mysql> repair table *;

2.使用MySQL自帶的客戶端工具: myisamchk (無需停止MySql服務)

有3種方式來調用mysqlcheck:

shell> mysqlcheck[options] db_name [tables]
shell> mysqlcheck[options] ---database DB1 [DB2 DB3...]
shell> mysqlcheck[options] --all--database
示例:

自動檢查並修復資料庫xxxdatabase的所有表:

shell> mysqlcheck --auto-repiar xxxdatabase -uroot -p

⑨ 如何修復損壞的MySQL數據表

工具/材料:Management Studio。

1、首先在桌面上,點擊「Management Studio」圖標。

閱讀全文

與mysql修復命令相關的資料

熱點內容
林正英100部鬼片免費 瀏覽:224
鬼片三及電影名 瀏覽:269
搜索引擎伺服器怎麼設置 瀏覽:645
鄭浩南清朝電影 瀏覽:18
算命神仙石天 瀏覽:87
末日享受txt下載 瀏覽:527
彈性力學教程pdf 瀏覽:768
描寫性生活的小說 瀏覽:608
網站在線觀看免費觀看 瀏覽:431
ar電影有哪些 瀏覽:80
中文字幕 好看的中文字幕 瀏覽:158
找電影名字拳王裡面有四大天王 瀏覽:380
python編程入門圖解 瀏覽:576
程序員不吃面 瀏覽:774
港台電影平台 瀏覽:78
故意違章追女交警的台灣電影 瀏覽:545
阿貝雲免費伺服器下載 瀏覽:166
韓國電影徐元 瀏覽:879
一部母乳電影 瀏覽:819
不用口罩做解壓球 瀏覽:933