你是不是安裝過mysql的其它版本?如果是,要卸載,而且卸載之前要先停止系統進程里的mysql服務,再重啟,再安裝新的版本才行。
目前給你提供一點解決辦法供參考
1。打開系統服務進程:右擊我的電腦-管理-服務和應用程序-服務,找到mysql,包括老版本和新版本的,右擊,全部停用
2。卸載已經安裝的MySQL4.1
3。重啟,手動全部刪除舊的安裝文件夾,尤其是windows\my.ini
4。再去看看服務進程里有沒有mysql,如果有,右擊-屬性-啟動類型-禁用
5。安裝新的版本,最好改變安裝路徑。等到出現選擇啟動win服務的下拉框時候,選41的那個就應該能成功了。
『貳』 資料庫的物理結構設計指的是什麼
Log File物理結構
log block結構分為日誌頭段、日誌記錄、日誌尾部
Block Header,佔用12位元組
Data部分
Block tailer,佔用4位元組
Block Header
這個部分是每個Block的頭部,主要記錄的塊的信息
Block Number,表示這是第幾個block,佔用4位元組,是通過LSN計算得來的,佔用4位元組
Block data len,表示該block中有多少位元組已經被使用了,佔用2位元組
First Rec offet,表示該block中作為第一個新的mtr開始的偏移量,佔用2位元組
Checkpoint number,表示該log block最後被寫入時的檢查點的值,佔用4位元組
『叄』 mysql資料庫無法啟動怎麼備份
mysql資料庫
無法啟動怎麼備份
要看不能啟動的具體原因,如果是程序部分異常,那麼數據是好的,可以打包備份。相反,如果是數據出了問題導致無法啟動,備份了也不是完整的。
MYSQL的所有資料庫的數據是以文件形式保存在文件夾裡面的,例如c:\mysql\data文件夾,直接打包此文件夾下的所有文件就可以達到備份的目的。
『肆』 資料庫表的物理結構是什麼
Log File物理結構
log block結構分為日誌頭段、日誌記錄、日誌尾部
Block Header,佔用12位元組
Data部分
Block tailer,佔用4位元組
Block Header
這個部分是每個Block的頭部,主要記錄的塊的信息
Block Number,表示這是第幾個block,佔用4位元組,是通過LSN計算得來的,佔用4位元組
Block data len,表示該block中有多少位元組已經被使用了,佔用2位元組
First Rec offet,表示該block中作為第一個新的mtr開始的偏移量,佔用2位元組
Checkpoint number,表示該log block最後被寫入時的檢查點的值,佔用4位元組
『伍』 資料庫如何備份
1、首先運行SQL。
『陸』 mysql資料庫中LSN為啥是對應日誌文件的偏移量
LSN實際上對應日誌文件的偏移量,新的LSN=舊的LSN + 寫入的日誌大小。舉例如下:
LSN=1G,日誌文件大小總共為600M,本次寫入512位元組,則實際寫入操作為:
l 求出偏移量:由於LSN數值遠大於日誌文件大小,因此通過取余方式,得到偏移量為400M;
l 寫入日誌:找到偏移400M的位置,寫入512位元組日誌內容,下一個事務的LSN就是1000000512;
『柒』 附加資料庫出現錯誤:9003 LSN無效
備份數據文件,然後按下面的步驟處理:
1.新建一個同名的資料庫(數據文件與原來的要一致)
2.再停掉sql server(注意不要分離資料庫)
3.用原資料庫的數據文件覆蓋掉這個新建的資料庫
4.再重啟sql server
5.此時打開企業管理器時會出現置疑,先不管,執行下面的語句(注意修改其中的資料庫名)
6.完成後一般就可以訪問資料庫中的數據了,這時,資料庫本身一般還要問題,解決辦法是,利用
資料庫的腳本創建一個新的資料庫,並將數據導進去就行了.
『捌』 sql server 2008 r2如何收縮資料庫和文件
1、右擊資料庫選擇,打開Files窗口
2、Files窗口,File type 選擇 Log,單擊OK完成日誌收縮。
按以上方法操作沒有效果,原因是資料庫的恢復模式不是簡單模式,只需要將恢復模式改為簡單模式即可用以上操作來收縮日誌,方便又好用。
將資料庫恢復模式改為簡單模式方法:
1、右擊資料庫選擇屬性,彈出窗口如下圖,選擇Options選項,將 Recovery Model 改為 Simple 即可。
按如下方法操作也可收縮日誌:
1、當資料庫恢復模式為簡單時。使用dbcc shrinkfile (logfile_name,target_size)命令來完成。如
use mydb
dbcc shrinkfile (mydb_log,10) --將mydb_log收縮至10m
2、當資料庫恢復模式為完全時。可以先將資料庫模式改為簡單模式,再使用上述方法來進行。
use master
alter database mydb set recovery simple
dbcc shrinkfile (mydb_log,10) --將mydb_log收縮至10m
也可以直接備份事務日誌文件後再收縮:
use master
backup log mydb to disk='d:/dd.bak'
use mydb
dbcc shrinkfile (mydb_log,10) --將mydb_log收縮至10m;
3、通過分離資料庫,然後再刪除事務日誌文件,再附加mdf數據文件,也可以達到某種意義上的事務日誌收縮。
以下是有關日誌文摘
對於每一個資料庫來講,都需要至少一個事務日誌文件。事務日誌文件是整個資料庫的血液,如果沒有事務日誌的話,那麼將無法進行任何操作。
事務日誌有什麼東西?
事務日誌記錄著在相關資料庫上的操作,同時還存儲資料庫恢復(recovery)的相關信息。
事務日誌與資料庫恢復(recovery)是密切相關的,其實資料庫在啟動時,便會進行相關的恢復(recovery)操作,如下所示。當然,在資料庫還原時,也可以指定手工恢復(recovery).任何在資料庫上的改變,如果在事務日誌內被標記為已提交,並用一個LSN(LOG SEQUENCE NUMBER)來標識,同時相關改變就會體現在數據文件上,而被標記為未提交的改變將不會體現在數據文件上。
2010-01-12 18:31:48.72 spid7s Recovery is complete. This is an informationa message only. No user action is required.
事務日誌文件還存儲著資料庫需要回滾的相關信息。在SQL Server資料庫上,默認是隱式提交的,也就是說在查詢分析器裡面進行的每一個操作,在操作完成後,都是默認已經commit,但如果通過指定begin tran 和rollback tran的命令來標識事務時,rollback tran就需要使用事務日誌內的相關信息才可以回滾。當然,如果SQL Server遇到相關錯誤時,如死鎖,那麼也會產生一個內部回滾,這些都需要用到事務日誌文件。
為什麼要收縮事務日誌?
收縮日誌的原因有很多種,有些則是考慮空間不足,有些則是應用程序限制導致的,一般情況下,是不建議對事務日誌進行其他改變的,如需要控制事務日誌的大小,則可以通過安排
『玖』 mysql資料庫中lsn為啥是對應日誌文件的偏移量
您好、
LSN實際上對應日誌文件的偏移量,新的LSN=舊的LSN + 寫入的日誌大小。舉例如下:
LSN=1G,日誌文件大小總共為600M,本次寫入512位元組,則實際寫入操作為:
l 求出偏移量:由於LSN數值遠大於日誌文件大小,因此通過取余方式,得到偏移量為400M;
l 寫入日誌:找到偏移400M的位置,寫入512位元組日誌內容,下一個事務的LSN就是1000000512;
僅供參考~
『拾』 附加SQL2000資料庫的時候出現:該LSN是傳遞給資料庫shikong_Lekd中的日誌掃描操作的,是怎麼回事
應該是數據文件或者日誌文件損壞了。
1)設置資料庫為緊急模式
停掉SQL Server服務;
把應用資料庫的數據文件XXX_Data.mdf移走;
重新建立一個同名的資料庫XXX;
停掉SQL服務;
把原來的數據文件再覆蓋回來;
運行以下語句,把該資料庫設置為緊急模式;
運行「Use Master
Go
sp_configure 'allow updates', 1
reconfigure with override
Go」
執行結果:
DBCC 執行完畢。如果 DBCC 輸出了錯誤信息,請與系統管理員聯系。
已將配置選項 'allow updates' 從 0 改為 1。請運行 RECONFIGURE 語句以安裝。
接著運行「update sysdatabases set status = 32768 where name = 'XXX'」
重啟SQL Server服務;
運行以下語句,把應用資料庫設置為Single User模式;
運行「sp_dboption 'XXX', 'single user', 'true'」
執行結果:
命令已成功完成。
做DBCC CHECKDB;
運行「DBCC CHECKDB('XXX')」
運行以下語句把系統表的修改選項關掉;
運行「sp_resetstatus "XXX"
go
sp_configure 'allow updates', 0
reconfigure with override
重新建立另外一個資料庫XXX.Lost;
2)DTS導出向導
運行DTS導出向導;