Linux系統下備份MySQL的詳細筆記

來源:互聯網
上載者:User

試了一天,在Linux系統下用MySQL的備份工具就是備份不了,現在詳細記錄下備份步驟

用SQLyogEnt工具備份,資料量大了出問題的,害了我好多次了,容易出錯,用mysql內建的工具備份就不錯。下面是步驟

1.先用工具SQLyogEnt連上mysql伺服器

2.然後編輯下root·localhost使用者的密碼

3.在Linux伺服器上建個目錄用來存放備份檔案/backdata/

cd /usr/local/mysql/bin/
mysqldump -u使用者名稱 -p密碼 --databases 庫名 >/backdata/ddd07-11-15.sql

恢複文法
mysqladmin create target_db_name

mysql target_db_name < backup-file.sql

即 mysql 庫名 < 檔案名稱

OK,注意,-u後面沒有空格, 你只需要把上面的中文換成你的相關資訊就可以了!

下面是遊戲合區的相關sql語句,是蘇楓寫的,有待完善
帳號伺服器上的修改

update `ACCSTORE0000` set ACCOUNT=Rtrim(ACCOUNT) + '2q'

到另一個區的伺服器裡找出最大的UID
SELECT max(UID) FROM `ACCSTORE0000`

比如是 1000066668

然後替換
update `ACCSTORE0000` set UID=UID + 1000066668

-------------------------
在遊戲伺服器上修改

update CHARBASE set name=CONCAT(rtrim(name),'1q')
update `CHARBASE` set ACCID=ACCID + 1000066668

update `ARMY` set NAME=Rtrim(NAME) + '2q'
update `ARMY` set GENNAME=Rtrim(GENNAME) + '2q'

好像GENID也要修改的,修改方法同UID,取另一伺服器的最大值得加上
-------------------------

update ``BALANCE`` set ACCOUNT=Rtrim(ACCOUNT) + '2q'
update ``BALANCE`` set ACCID=ACCID + 1000066668

其他要改的表一樣處理

重名的話,先吧另一個區的人名表導到要修改的區的資料庫裡,不過表名別一樣,然後就用
where 人名 not in (select 人名 from 表名) 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.