㈠ oracle資料庫日常健康檢查會檢查哪些內容使用哪些命令
oracle檢測壞塊的方式:
1、利用oracle的RMAN工具
2、利用dbv工具檢測
3、利用 exp/imp工具檢測
其中2、3的方式無法徹底檢測所有壞塊,所以重點介紹下RMAN方式
RMAN>backup check logical validate datafile n ;
可以檢查數據文件是否包含壞塊,同時並不產生實際的備份輸出。
而且當使用Recovery Manager進行實際的資料庫備份時,同時也就進行了壞塊
檢查。但要注意的是,在線使用Recovery Manager掃描壞塊和備份時,需要數
據庫運行在歸檔模式(archive log),否則只能在資料庫未打開的情況下進行。
㈡ DBCC CHECKDB是什麼意思
資料庫一致性檢查;執行結果;資料庫或表修復
例句
全部,資料庫一致性檢查,執行結果,資料庫或表修復
1.These data structure checks can be performed by using DBCC CHECKDB andDBCC CHECKTABLE.
可使用DBCCCHECKDB和DBCCCHECKTABLE執行這些數據結構檢查。亮粗運
2.We also recommend that you periodically run DBCC CHECKDB with no options.
同時建議您定期運行沒有選項的DBCCCHECKDB。
3.After this, DBCC CHECKDB checks column-value integrity by default.
然後,DBCCCHECKDB將默認檢查列值完整性。
4.However, if you run the DBCC CHECKDB statement to check for databasecorruption, the DBCC CHECKDB statement does not report any errors.
但是,如果運行DBCCCHECKDB語句以檢凳悔查資料庫敬梁損壞,DBCCCHECKDB語句不報告任何錯誤。
㈢ 怎麼損壞mysql數據表的索引
損壞mysql數據表的索引
mysql表索引被破壞的問題及解決
下午上班,驚聞我的dedecms的網站出問題了,訪問一看,果然全屏報錯,檢查mysql日誌,錯誤信息為:
Table '.\dedecmsv4\dede_archives' is marked as crashed and should be repaired
提示說cms的文章表dede_archives被標記有問題,需要修復。於是趕快恢復歷史數據,上網查找原因。最終將問題解決。解決方法如下:
找到mysql的安裝目錄的bin/myisamchk工具,在命令行中輸入:
myisamchk -c -r ../data/dedecmsv4/dede_archives.MYI
然後myisamchk 工具會幫助你恢復數據表的索引。重新啟動mysql,問題解決。
問題分析:
1、錯誤產生原因,有網友說是頻繁查詢和更新dede_archives表造成的索引錯誤,因為我的頁面沒有靜態生成,而是動態頁面,因此比較同意
這種說法。還有說法為是MYSQL資料庫因為某種原因而受到了損壞,如:資料庫伺服器突發性的斷電、在提在資料庫表提供服務時對表的原文件
進行某種操作都有可能導致MYSQL資料庫表被損壞而無法讀取數據。總之就是因為某些不可測的問題造成表的損壞。
2、問題解決辦法。
當你試圖修復一個被破壞的表的問題時,有三種修復類型。如果你得到一個錯誤信息指出一個臨時文件不能建立,刪除信息所指出的文件並再
試一次--這通常是上一次修復操作遺留下來的。
這三種修復方法如下所示:
% myisamchk --recover --quick /path/to/tblName
% myisamchk --recover /path/to/tblName
% myisamchk --safe-recover /path/to/tblName
第一種是最快的,用來修復最普通的問題;而最後一種是最慢的,用來修復一些其它方法所不能修復的問題。
檢查和修復MySQL數據文件
如果上面的方法無法修復一個被損壞的表,在你放棄之前,你還可以試試下面這兩個技巧:
如果你懷疑表的索引文件(*.MYI)發生了不可修復的錯誤,甚至是丟失了這個文件,你可以使用數據文件(*.MYD)和數據格式文件(*.frm)重新生
成它。首先製作一個數據文件(tblName.MYD)的拷貝。重啟你的MySQL服務並連接到這個服務上,使用下面的命令刪除表的內容:
mysql> DELETE FROM tblName;
在刪除表的內容的同時,會建橋大立一個新的索引文件。退出登錄並重新關閉服務,然後用你剛才保存的數據文件(tblName.MYD)覆蓋新的(空)數據
文件。最後,使用myisamchk執行標準的修復(上面的第二種方法),根據表的數據的內容和表的格式文件重新生成索引數據。
如果你的表的格式文件(tblName.frm)丟失了或者是發生了不可修復的錯誤,但是你清楚如何使用相應的CREATE
TABLE語句來重新生成這張表,你可以重新生成一個新的.frm文件並和你的數據文件和索引文件(如果索引文件有問題,使用上面的方法重建一
個新的)一起使用。首先製作一個數據和索引文件的拷貝,然後刪除原來的文件(刪除數據目錄下有關這個表的所有記錄)。
啟動MySQL服務族擾並使用當初的CREATE
TABLE文件建立一個新的表。新的.frm文件應該可以正常工作了,但是最好你還是執行一下標準的修復(上面的第二種方法)。
3、myisamchk工具介紹(見mysql的官方手冊)
可以使用myisamchk實用程序來獲得有關兆消旦資料庫表的信息或檢查、修復、優化他們。myisamchk適用MyISAM表(對應.MYI和.MYD文件的表)。
調用myisamchk的方法:
shell> myisamchk [options] tbl_name ...
options指定你想讓myisamchk做什麼。在後面描述它們。還可以通過調用myisamchk --help得到選項列表。
tbl_name是你想要檢查或修復的資料庫表。如果你不在資料庫目錄的某處運行myisamchk,你必須指定資料庫目錄的路徑,因為myisamchk不知
道你的資料庫位於哪兒。實際上,myisamchk不在乎你正在操作的文件是否位於一個資料庫目錄;你可以將對應於資料庫表的文件拷貝到別處並
且在那裡執行恢復操作。
如果你願意,可以用myisamchk命令行命名幾個表。還可以通過命名索引文件(用「
.MYI」後綴)來指定一個表。它允許你通過使用模式「*.MYI」指定在一個目錄所有的表。例如,如果你在資料庫目錄,可以這樣在目錄下檢查
所有的MyISAM表:
shell> myisamchk *.MYI
如果你不在資料庫目錄下,可通過指定到目錄的路徑檢查所有在那裡的表:
shell> myisamchk /path/to/database_dir*.MYI
㈣ mysql怎樣查看資料庫命令
mysql數據的查詢是通過sql語句來實現的,常用的查詢操作如下:
1、連接資料庫mysql -u 用戶名 -p 用戶密碼
說明:可以在命令中直接接入密碼,也可以不加入密碼。
㈤ SQL語法:一些最重要的 SQL 命令
SQL語法
資料庫表
一個資料庫通常包含一個或多個表。每個表由一個名字標識(例如:Websites),表包含帶有數據的記錄(行)。
在本教程中,我們在 MySQL 的 RUNOOB 資料庫中中創建了 Websites 表,用於存儲網站記錄。
我們可以通過以下命令查看 Websites 表的數據:
mysqluseRUNOOB;;QueryOK,0rowsaffected(0.00sec)mysqlSELECT*FROMWebsites;+----+--------------+---------------------------+-------+---------+|id|name|url|alexa|country|+----+--------------+---------------------------+-------+---------+|1|Google|
解析
use RUNOOB;命令用於選擇資料庫。
set names utf8;命令用於設置使用的字元集。
SELECT * FROM Websites;讀取數據表的信息。
上面的表包含五條記錄(每一條對應一個網站信息)和5個列(id、name、url、alexa 和country)。
SQL 語句
您需要在資料庫上執行簡仔的大部分工作都由 SQL 語句完成。
下面的 SQL 語句從 Websites 表中選取所有記錄:
實盯咐昌例
SELECT * FROM Websites;
在本教程中,我們將為您講解各種不同的 SQL 語句。
請記住...
SQL 對大小寫不敏感:SELECT 與 select 是相同的。
SQL 語句後面的分號?
某些資料庫系統要求在每條 SQL 語句的末端使用分號。
分號是在資料庫系統中分隔每條 SQL 語句的標准方法,這樣就可以在對伺服器的相同請求中執行一條以上的 SQL 語句。
在本教程中,我們將在每條 SQL 語句的末端使用分號。
一些最重要的 SQL 命令
SELECT- 從資料庫中提取數據
UPDATE- 更新資料庫中的數據
DELETE- 從資料庫中刪除數據
INSERT INTO- 向資料庫中插入新數據
CREATE DATABASE- 創建新資料庫
ALTER DATABASE- 修改資料庫
CREATE TABLE- 創建新表
ALTER TABLE- 變更(改變)資料庫表
DROP TABLE- 刪除表
CREATE INDEX- 創建索引(搜索鍵)凱扒
DROP INDEX- 刪除索引
㈥ 資料庫索引損壞。刪除原來的索引或重建索引 控制台輸入命令:load fixup xxx.nsf load updall -r xxx.nsf
這個不是在CMD下輸入,是在Domino伺服器控制台輸入的。
㈦ navicat for mysql中如何設置自動修復崩潰的數據表
jb51_tablename是jb51_tablename.MYD的名稱。運行以下就可以了。
有的時候因為掉電或者其他原因導致資料庫損壞,我們可以使用mysql自帶的mysqlcheck命令來快速修復所有的資料庫或者特定的資料庫;例如
檢查優化並修復所有的資料庫用:
1.先在運行中輸入CMD,啟動命令行.
2.進入Mysql的Bin目錄:E:\Program Files\MySQL\MySQL Server 5.0\bin,如果不知道如何進入別的目錄,就要參考網上的資料補習基礎知識了.
常見方式:㈧ 資料庫wp_users沒有表
原因如下:
1、資料庫連接問題:可能是資料庫連接信息不正確、資料庫服務未啟動,或者資料庫用戶沒有足夠的許可權。
2、資料庫表損壞:可能是資料庫表在操作過程中發生了損壞,出現了一些錯誤,導致某些表無法正常使用。
3、WordPress更新問題:可能是在WordPress升級期間清備滲失敗導致wp_users表丟失。
4、解決方法:確認資料庫連接信息是否正確,資料庫服務是否正常運行。如果資料庫服務未啟動,請嘗試啟動它。
5、嘗試手動修復損壞的資料庫表。可以使用MySQL提供的修復工具,具體方法是打開MySQL命令行,輸入以下命令:`mysqlcheck-r[資料庫名稱進行修滾物復。
6、嘗試使用WordPress自帶的修復工具。可以在wp_admin管理後台,找到「工具」-->「可用性」-->「修復資料庫」選項,點擊修復按鈕進行修復。
7、嘗試從WordPress資料庫備份中恢復wp_users表。將備份文件導入到MySQL資料庫中,查看wp_users表是否存在如果以上方法都不能解決問題,則答脊建議請聯系網站的技術支持人員進行進一步的排查和處理。㈨ oracle ORA-01033問題怎麼解決
客戶Oracle伺服器進入PL/SQL Developer時報ora-01033:oracle initializationg or shutdown in progress 錯誤提示,應用系統無法連派褲接Oracle服務。經遠程指導解決問題。過程如下:
1、進入CMD,執行set ORACLE_SID=fbms,確保連接到正確的SID;
2、運行sqlplus "/as sysdba"
SQL>shutdown immediate 停止服務
SQL>startup 啟動服務,觀察啟動時有無數據文件載入報錯,並記住出錯數據文件標號
SQL>shutdown immediate 再次停止服務
SQL>startup mount
SQL> recover datafile 2 恢復出錯的數據文件
SQL>shutdown immediate 再次停止服務
SQL>startup 啟動服務,此次正常。
3、進入PL/SQL Developer檢查,沒有再提示吵或錯誤。
還啟動不了,可能就是文件升羨伍的問題,不過好像也有解決辦法,你先看看這個好使不?其他的我再找找哈㈩ 資料庫損壞
有兩種方法,一種方法使用mysql的checktable和repairtable的sql語句,另一種方法是使用MySQL提供的多個myisamchk,isamchk數據檢測恢復工具。
前者使用起來比較簡便。推薦使用。
1、checktable和repairtable登陸mysql終端:mysql-uxxxxx-pdbnamechecktabletabTest;
如果出現的結果說Status是OK,則不用修復,如果有Error,可以用:repairtabletabTest;進行修復,修復之後可以在用checktable命令來進行檢查。
在新版本的phpMyAdmin裡面也可以使用check/repair的功能。
2.myisamchk,isamchk其中myisamchk適用於MYISAM類型的數據表,而isamchk適用於ISAM類型的數據表。
這兩條命令的主要參數相同,一般新的系統都使用MYISAM作為預設的數據表類型,這里以myisamchk為例子進行說明。
當發現某個數據表出現問題時可以使用:myisamchktablename.MYI進行檢測,如果需要修復的話,可以使用:myisamchk-oftablename.MYI關於myisamchk的詳細參數說明,可以參見它的使用幫助。
需要注意的時在進行修改時必須確保MySQL伺服器沒有訪問這個數據表,保險的情況下是最好在進行檢測時把MySQL伺服器Shutdown掉。
2、另外可以把下面的命令放在你的rc.local裡面啟動MySQL伺服器前:[-x/tmp/mysql.sock]&&/pathtochk/myisamchk-of/DATA_DIR/*/*.MYI。
其中的/tmp/mysql.sock是MySQL監聽的Sock文件位置,對於使用RPM安裝的用戶判帆滾應該是/var/lib/mysql/mysql.sock,對於使用源碼安裝則是/tmp/mysql.sock可以根據自己的掘余實際情況進行變更,而pathtochk則是myisamchk所在的位置,DATA_DIR是你的MySQL資料庫存放的位置。
需要注意的是,如果轎帆你打算把這條命令放在你的rc.local裡面,必須確認在執行這條指令時MySQL伺服器必須沒有啟動!
最後檢測修復所有資料庫(表)。