本文目錄一覽:
- 1、mysql數據庫沒用備份如何恢復
- 2、如何MYSQL數據庫的文件恢復原來數據庫
- 3、如何導入mysql數據庫? 我把以前mysql數據庫文件直接拷貝出來了,然後重裝了mysql,如何導入新的mysql中?
- 4、mysql誤導入了數據,把原來的數據覆蓋掉了,這個有辦法還原嗎?
- 5、mysql整個數據庫被刪除了怎麼恢復
- 6、sql2000重裝後怎以把怎麼把以前的數據庫文件導入
mysql數據庫沒用備份如何恢復
打開mysql的bin log功能:
對於mysql也是支持增量備份,但要打開mysql的bin log功能。
我們修改mysql的配置文件。linux是/etc/my.cnf,windows是mysql的安裝目錄/my.ini
我們在[mysqld]下面加上log-bin一行代碼,如下面。
[mysqld]
log-bin=mysql-bin
複製代碼
加完後重起mysql即可。
某客戶更新數據的時候,誤刪了數據庫的內容,因為數據庫做了主從,但是沒有做備份(備份很重要啊!)幸好開啟了bin-log,之後只好把整個日誌的記錄拿回來本地進行恢復。
之後自己也做了一個簡單的測試,對數據進行恢復,具體如下:
1、新建一個表
CREATE TABLE `lynn`.`sn_test` ( `name` VARCHAR( 10 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL , `age` INT( 3 ) NOT NULL ) ENGINE = MYISAM;
2、插入多條數據
INSERT INTO `lynn`.`sn_test` (`name`, `age`) VALUES (‘lynn1’, ‘1’);
INSERT INTO `lynn`.`sn_test` (`name`, `age`) VALUES (‘lynn2’, ‘2’);
INSERT INTO `lynn`.`sn_test` (`name`, `age`) VALUES (‘lynn3’, ‘3’);
INSERT INTO `lynn`.`sn_test` (`name`, `age`) VALUES (‘lynn4’, ‘4’);
3、查看數據並刪除
mysql select * from sn_test;
+——-+—–+
| name | age |
+———+—+
| lynn1 | 1 |
| lynn2 | 2 |
| lynn3 | 3 |
| lynn4 | 4 |
+———+—–+
4 rows in set (0.00 sec)
mysql delete from sn_test;
Query OK, 4 rows affected (0.00 sec)
mysql select * from sn_test;
Empty set (0.00 sec)
4、mysqlbinlog恢複數據
mysqlbinlog mysql-bin.000006 1.sql
查看1.txt裏面數據插入的紀錄,把刪除之前的數據進行恢復
mysqlbinlog mysql-bin.000006 –start-position=2471 –stop-position=2876 | mysql -uroot -p123
重新登錄,查看數據,OK,已經成功恢復了
對於數據庫操作,應該注意如下問題:
1、要常備份(全備,增量備份),出了問題可以最快恢複數據;
2、操作數據庫前,要把需要操作的數據庫或者表dump出來;
3、需要把bin-log打開,就算沒有做上面的兩步,也可以通過日誌恢複數據
如何MYSQL數據庫的文件恢復原來數據庫
你好,直接把Mysql文件放回對應的數據庫目錄下,直接覆蓋就好了
希望你的問題能解決,望採納
如何導入mysql數據庫? 我把以前mysql數據庫文件直接拷貝出來了,然後重裝了mysql,如何導入新的mysql中?
1.將數據庫文件拷貝到相關目錄
cd mydb/
cp * /var/lib/mysql/mydb/
對於FreeBSD:
cp * /var/db/mysql/mydb/
2. 權限設置
將拷貝過去的文件的屬主改為mysql:mysql,權限改為660
chown mysql:mysql /var/lib/mysql/mydb/*
chmod 660 /var/lib/mysql/mydb/*
mysql誤導入了數據,把原來的數據覆蓋掉了,這個有辦法還原嗎?
有多種方法.請參考以下方法. 方法一: 安裝一個mysql的客戶端,比如navicat,建好連接,打開要導入的數據庫,點擊導入嚮導,選擇要導入的 數據,選擇要導入的目標表,在最後的選項中選擇附加到已有數據. 方法二: 先使用mysq命令行導入新數據到一張新表,新表結構與之前表一樣.然後執行以下插入語句. 假定新表名為new_tb,原表名為old_tb, 則 insert into old_tb select * from new_tb
mysql整個數據庫被刪除了怎麼恢復
1 找個別的機器安裝個同版本的mysql或從已安裝同版本的其他機器上(非同版本的也可以試下):
拷貝 mysql/data/mysql 目錄到你的mysql/data/ 下吧
2 試着啟動mysql服務,如果能啟動了,理論上應該丟失的只有用戶、授權等一些系統信息,不影響你的使用的數據;
如果不能啟動,看錯誤日誌,爭取啟動了。
3 趕緊把數據備份一份出來,重新把所有庫(只是你後來創建的業務相關的庫,不包括mysql庫)都刪了,重新導入一遍。理論上不這樣也可以,但只是非生產重要的環境下。
4 重新做用戶授權。
sql2000重裝後怎以把怎麼把以前的數據庫文件導入
1.導出整個數據庫
mysqldump
-u
用戶名
-p
數據庫名
導出的文件名
mysqldump
-u
dbuser
-p
dbname
dbname.sql
2.導出一個表
mysqldump
-u
用戶名
-p
數據庫名
表名
導出的文件名
mysqldump
-u
dbuser
-p
dbname
users
dbname_users.sql
3.導出一個數據庫結構
mysqldump
-u
dbuser
-p
-d
–add-drop-table
dbname
d:/dbname_db.sql
-d
沒有數據
–add-drop-table
在每個create語句之前增加一個drop
table
4.導入數據庫
常用source
命令
進入mysql數據庫控制台,如
mysql
-u
root
-p
mysqluse
數據庫
然後使用source命令,後面參數為腳本文件(如這裡用到的.sql)
mysqlsource
d:/dbname.sql
原創文章,作者:YJMV,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/150109.html