Bản in cho chủ đề

Click vào đây để xem chủ đề như bình thường

VnVista Forum _ Invision Power Board modifications + skins _ Hướng dẫn back up và restore database

Người gửi: Tacaza Sep 5 2005, 07:45 PM

Việc thường xuyên back up database là rất quan trọng. Nếu bạn dùng host free thì website của bạn sẽ không được back up dữ liệu hàng ngày, còn nếu dùng paid host thì cũng nên cẩn thận back up dữ liệu định kỳ, phòng khi server bị trục trặc hoặc trang web của bạn bị hacker tấn công sẽ mất hết dữ liệu (và công lao xây dựng).
Để back up database thì rất đơn giản, bạn chỉ cần vào phpmyadmin hoặc một trình quản lý cơ sở dữ liệu nào khác và chọn export để save cơ sở dữ liệu thành file. Còn nếu host bạn có cpanel thì bạn cũng có thể back up trong cpanel. Nhưng theo kinh nghiệm của mình, back up trong cpanel rất hay bị mất một số table, tốt nhất là đừng nên back up bằng cpanel. Ngoài ra, trong ACP cũng có chức năng back up database.

Khó khăn hơn là việc restore dữ liệu. Có nghĩa là bạn có file cơ sở dữ liệu rồi, giờ muốn khôi phục lại cơ sở dữ liệu này vào host. Để restore cơ sở dữ liệu cũng có nhiều cách, trước khi restore cơ sở dữ liệu vào host, bạn phải xoá hết các table của cơ sở dữ liệu trên host đi, nếu không restore trùng table sẽ báo lỗi: Bạn vào phpmyadmin, chọn cơ sở dữ liệu mà bạn muốn restore, chọn tất cả các table và chọn lệnh Drop. Chú ý: lệnh drop sẽ xoá tất cả các table trong cơ sở dữ liệu của bạn, và cơ sở dữ liệu của bạn trống rỗng.

1. Restore CSDL trong phpmyadmin:
Có hai cách:
- Chọn vào phần SQL --> trong khung "Run SQL query/queries on database..." bạn copy nội dung của file database & dán vào đó: chỉ copy từng đoạn từ chỗ "Create Table" này cho đến trước chỗ "Create table" khác rồi click vào "Go". Cứ thế lần lượt copy từng đoạn và restore (click vào "Go") cho đến hết file database của bạn. Nếu bạn copy cả file thì khi restore chắc chắn sẽ bị lỗi, bởi cơ sở dữ liệu lớn quá.
- Cách hai: chia file cơ sở dữ liệu của bạn (có định dạng .sql) thành nhiều file nhỏ, mỗi file bắt đầu bằng "Create table", rồi restore vào host bằng cách chọn browse trong "Location of the text file" - cứ thể restore từng file một (bởi cơ sở dữ liệu lớn nên phải chia nhỏ ra restore mới không bị lỗi).

2. Restore dùng script:
Các bạn download file zip đính kèm về, giải nén ra, trong đó có file mysql_tool.php. Bạn upload file này lên host, & upload file database vào cùng thư mục. Sau đó bạn chạy file này bằng trình duyệt web. Mật khẩu mặc định mình để là "vnvista", sau khi tải về bạn đổi lại password này ở dòng $password = ... Sau khi login, bạn sẽ điền thông tin về database cần restore, username, password... và chọn file database để restore. Sau đó bạn chỉ việc ngồi chờ. Thường thì chỉ mất khoảng trên dưới 1 phút là xong (tuy nhiên cũng tuỳ thuộc vào tốc độ server - nếu dùng free host thì tốc độ có thể chậm hơn)
Đoạn script này cũng cho phép bạn back up database.

Từ trước tới nay mình chỉ dùng cách thứ hai để restore dữ liệu. Restore trong phpmyadmin mất thời gian rất rất nhiều, có khi nửa ngày mới xong (nếu cơ sở dữ liệu lớn), và thường bị lỗi khi restore.

(Khách không được phép xem hoặc tải dữ liệu đính kèm!)

Người gửi: nam Oct 17 2005, 05:37 AM

Tacaza choi hoi tao sao khi minh backup bang AdminCP cua IPB, sau do restore bang PHPMyAdmin tren mot host khac thi lai bao loi charset = latin1 gi do. Minh khong hieu lam. Loi gi ky vay.

Người gửi: Tacaza Oct 17 2005, 06:28 AM

À, đó là lỗi ký tự của cơ sở dữ liệu. Có thể cơ sở dữ liệu trên host kia sử dụng bộ ký tự mặc định khác với của host trước.

Người gửi: masodeptrai Oct 17 2005, 10:11 AM

Chào các bạn, mình đang gặp phải một vấn đề rất đau đầu về back up database.
Mình đang sử dụng diễn đàn IBF 2.0.4 trên một con server tự cấu hình.
Sử dụng phpMyAdmin 2.6.1

( link: http://210.245.3.202/mysql/ )

Mình muốn chuyển database sang host http://trailuoi.5gigs.com (chỉ cần các bài viết và mem thôi)

(link tới phpadmin: http://trailuoi.5gigs.com:2082/3rdparty/phpMyAdmin/index.php

user:trailuoi
pass:chaoban)

Nhưng đang bị mắc phải lỗi nì khi đang import vào database test hoặc trailuoi_trailuoi ở bên 5gigs:

CODE

SQL query:

CREATE TABLE IF NOT EXISTS `ibf_admin_logs` (

`id` bigint( 20 ) NOT NULL AUTO_INCREMENT ,
`act` varchar( 255 ) default NULL ,
`code` varchar( 255 ) default NULL ,
`member_id` int( 10 ) default NULL ,
`ctime` int( 10 ) default NULL ,
`note` text,
`ip_address` varchar( 255 ) default NULL ,
PRIMARY KEY ( `id` )
) ENGINE = MYISAM DEFAULT CHARSET = latin1 AUTO_INCREMENT =272
MySQL said:  

#1064 - You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near 'DEFAULT CHARSET=latin1 AUTO_INCREMENT=272' at line 10


Rất mong mọi người giúp đỡ user và pass mình đã đưa cả rồi

:05:

Người gửi: Tacaza Oct 17 2005, 10:34 AM

Mình thấy database trailuoi của bạn đã đầy dữ liệu rồi mà. Có phải là bạn định thay thế dữ liệu hiện giờ bằng dữ liệu mới phải không? Nếu vậy bạn phải xóa hết dữ liệu cũ, hay chỉ xóa những table cần import vào trước khi import cơ sở dữ liệu hay những table mới.

Còn câu lệnh Mysql bên trên không hề có lỗi đâu bạn. Đó là câu lệnh tạo table mới - nhưng vì table ibf_admin_logs đã tồn tại nên mới có lỗi thôi.

chú ý: backup trước khi xóa dữ liệu nếu không sẽ mất hết 66.gif

Người gửi: masodeptrai Oct 17 2005, 10:42 AM

bạn có thể xóa các dữ liệu ở bên trailuoi.5gigs , mong giúp đỡ

Người gửi: Tacaza Oct 17 2005, 10:53 AM

Ok, consider it done :)

Người gửi: nam Oct 20 2005, 10:26 PM

QUOTE(Tacaza @ Oct 17 2005, 10:53 AM)
Ok, consider it done :)
*



Mình xài bản IPB 2.0.4 tiếng Anh, mình cài lại rồi restore lại database thì các forum và nội dung bài tiếng Việt bị sai font chữ hết, mình không biết lỗi gì, nhờ Tacaza bày giùm.

Không biết khi update lên 2.1.x có ảnh hưởng gì không??

Người gửi: Tacaza Oct 20 2005, 10:35 PM

Thế chắc là lỗi font chữ post bài trong forum rồi. Ngay khi cài forum xong và trước khi post bài, bạn phải vào ACP --> Skin Manager --> Edit Root Skin Board Header & Footer Wrapper, sửa dòng:

CODE
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />

Thành:
CODE
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />

Nếu hai lần cài bạn để hai font này khác nhau thì sẽ dẫn tới lỗi font.
Còn nếu font chữ đã đúng thì upgrade lên 2.1 sẽ không sao.

Người gửi: nam Oct 20 2005, 10:55 PM

QUOTE(Tacaza @ Oct 20 2005, 10:35 PM)
Thế chắc là lỗi font chữ post bài trong forum rồi. Ngay khi cài forum xong và trước khi post bài, bạn phải vào ACP --> Skin Manager --> Edit Root Skin Board Header & Footer Wrapper, sửa dòng:
CODE
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />

Thành:
CODE
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />

Nếu hai lần cài bạn để hai font này khác nhau thì sẽ dẫn tới lỗi font.
Còn nếu font chữ đã đúng thì upgrade lên 2.1 sẽ không sao.
*



Để mình thử xem, cám ơn Tacaza.

Người gửi: nam Oct 20 2005, 11:13 PM

Mình sửa lại rồi nhưng không được, vẫn vậy thôi. Hông hiểu sao ta.

Người gửi: Tacaza Oct 21 2005, 08:55 AM

À không, tức là bạn phải sửa cái này trước khi có bài viết cơ, còn sau khi có bài viết rồi mới sửa thì cũng không được. Nhưng không hiểu bạn bị lỗi font chữ như thế nào? Các chữ trong bài viết của bạn bị lỗi như kiểu này:

QUOTE
Việc thường xuyên back up database là rất quan trọng.

Hay lỗi như kiểu này:
QUOTE
Vi?c th??ng xuy?n back up database l? r?t quan tr?ng

???

Người gửi: nam Oct 22 2005, 07:39 AM

Thanks Tacaza, mình bị theo kiểu thứ 2 (bên dưới) đó là lỗi gì vậy??? Thực sự không có cách nào khôi phục sao??

Người gửi: masodeptrai Oct 22 2005, 08:11 AM

Bạn chụp screen lên đi, rất hữu ích đấy.
Cái nì mình cũng đã từng gặp. Khi create database một số bạn phpAdmin cho phép bạn chọn loại ký tự như latin1, latin2....
Nếu chọn không phù hợp với cái host trước thì khi restore lại chắc chắn một điều là bạn không bao giờ khắc phục được lỗi trên.

Người gửi: Tacaza Oct 22 2005, 08:36 AM

Lỗi như kiểu thứ hai thì không có cách nào khắc phục được đâu bạn. Chỉ còn cách là phải edit lại các bài viết thôi

Người gửi: masodeptrai Oct 22 2005, 08:38 AM

Nếu mình đoán không lầm thì bạn sử dụng trên localhost (trên PC) phải không?)

Người gửi: nam Oct 24 2005, 08:59 AM

QUOTE(masodeptrai @ Oct 22 2005, 08:38 AM)
Nếu mình đoán không lầm thì bạn sử dụng trên localhost (trên PC) phải không?)
*



Đúng vậy, mà lỗi vậy theo Tacaza không sửa được thì chết rùi. Có cách nào backup database lại nhưng chỉ backup riêng member, categories và forum không? 18.gif

Người gửi: Tacaza Oct 24 2005, 09:26 AM

Nếu vậy bạn chỉ cần back up các table chứa dữ liệu member, forum như
ibf_members, ibf_members_converge, ibf_member_extra, ibf_groups, ibf_moderators, ibf_forums, ibf_validating (và có thể còn 1 số nữa)

Người gửi: hacker89 Oct 30 2005, 03:03 PM

Mình đã restore DB xong rồi nhưng khi vàơeb mới thì nó ko hiện ra các image và chữ viết bị thay đổi tất cả chẳng đọc dc gì cả . Link : http://saocodon.web.aplus.net/forum/index.php?act=idx . Ai biết sửa bằng cách nào thì chỉ hộ mình nhé . Mình đã up folder forum len host rồi mà vẫn bị như thế .

Người gửi: hacker89 Oct 30 2005, 03:15 PM

Và sao khi mình vào web thì đăng nhập nick thì nó cứ báo là ko tìm thấy thành viên này .Nó bị lỗi như vậy là sao vậy bạn ?

Người gửi: Tacaza Oct 30 2005, 04:10 PM

Mình vào trang bạn rùi. Không biết là trước đó bạn dùng bộ ký tự nào (charset), giờ thử sử dụng các bộ ký tự thông dụng như unicode, iso... đều vẫn bị lỗi font. Bạn phải xem trước đây mình dùng bộ ký tự nào để điều chỉnh trong acp (có thể trước đây bạn chọn một bộ ký tự đặc biệt nào đó trong mysql)

Còn lỗi ko thấy thành viên thì có thể là do cơ sở dữ liệu hay lỗi trong các file php. Nếu sau khi restore, bạn thử tự đăng ký vài thành viên mới, và đăng nhập với những nick mới này. Nếu ko đăng nhập được thì là do lỗi của các file php. Nếu đăng nhập được (tức là chỉ ko đăng nhập được đối với những thành viên đã đăng ký trước khi restore database) thì là lỗi database thôi.
(Mình nghĩ đó là lỗi database, bởi sai font chữ nên nếu trước đây thành viên đăng ký với tên tiếng Việt có dấu thì sau khi restore đã bị sai font chữ --> nick trong database cũng bị sai font chữ --> ko đăng nhập được)

Người gửi: hacker89 Oct 30 2005, 05:56 PM

Vậy giờ mình phải chỉnh làm sao để forum hết bị lỗi đây bạn ? BẠn hường dẫn cụ thể cho mình dc ko ? Cám ơn nhiều .

Người gửi: Tacaza Oct 30 2005, 06:25 PM

Như mình đã nói đó, mình không biết là trước đây bạn dùng bỗ ký tự gì cho diễn đàn. Giờ thử xem bằng các bộ ký tự thông dụng đều ko được. Nếu biết bạn dùng bộ ký tự gì thì mới có thể sửa trong acp để forum luôn hiển thị bộ ký tự đó (và ko còn lỗi font chữ) được.

Nhưng nếu bạn dùng một bộ ký tự ko phải là utf-8 thì rất bất tiện. Website bằng tiếng Việt (dù là forum hay trang tin tức...) thì tốt nhất là sử dụng bộ ký tự utf-8. (Chẳng hạn nếu bạn muốn tích hợp từ điển Việt-Anh vào forum mà dùng bộ ký tự ISO-8859-1 hay bộ ký tự nào khác thì sẽ ko tra được từ, vì hầu hết các từ điển tiếng Việt online đều dùng utf-8). Nhưng vì bạn đã dùng bộ ký tự khác rồi nên giờ không thể chuyển sang dùng utf-8 được, nếu ko các bài post trước đó sẽ lỗi font chữ hết.

Ngoài ra mình thấy diễn đàn bạn đang bị lỗi file functions.php nữa hic 1.gif

Người gửi: Thank you ^_^ Jun 3 2006, 08:24 PM

3 thành viên đã cám ơn người lập chủ đề:
http://vnvista.com/forums/index.php?showuser=558, daiduongmobile

Người gửi: thiencan Dec 24 2005, 09:01 AM

Cho Mình hỏi tí
Mình sái bản 2.0.4
Vay khi mình restore lại database tren 1 host khác,mình có cần install lạii diễn đàn ko? hay chỉ bê nguyên thư mục diễn đàn từ host củ sang host mới vậy?
CÁm ơn trước nhé

Người gửi: Tacaza Dec 24 2005, 10:33 AM

Ko cần install lại, sau khi restore database cứ thế chuyển file php từ host cũ sang host mới thôi.

Người gửi: masodeptrai Dec 24 2005, 11:40 AM

Chào các bạn, bạn nào đã dính phải lỗi này chửa?

CODE
ENGINE = MYISAM DEFAULT CHARSET = latin1 AUTO_INCREMENT =272

Cách khắc phục:
Bạn back up dữ liệu của bạn, sau đó dùng notepad đẻ edit lai file database đó (.sql đó).
Xoá tất cả
CODE
CHARSET = latin1
là được.

*
CODE
Cho Mình hỏi tí
Mình sái bản 2.0.4
Vay khi mình restore lại database tren 1 host khác,mình có cần install lạii diễn đàn ko? hay chỉ bê nguyên thư mục diễn đàn từ host củ sang host mới vậy?

-Đầu tiên bạn copy toàn bộ những dữ liệu của host cũ sang host mới.
-Back up database từ host cũ.
-Tạo database trên host mới.
-Restore database từ host cũ sang host mới.
-Cấu hình lại file config_gbole.php sao cho giống với info của host mới (các link, tên database, user...)
-Vào adminCP trên host mới, chỉnh lại nhưng thông tin trong General Configuration.
-Một số mod có thể không hoạt động, các bạn phải cài lại (tất nhiên là vẫn có cách khắc phục).
.......

Kiến thức mình chỉ có vậy, mong nhận được sự góp ý của các bạn/



Người gửi: masodeptrai Dec 24 2005, 11:41 AM

Những phương pháp trên mình đã từng làm qua, nếu các bạn gặp trục trặc gì cứ pm cho mình. Không làm được không về. 9.gif

Người gửi: thiencan Dec 24 2005, 06:34 PM

Mình Restore lại xong rồi,nhưng sao font chử bị thay đổi tùm lum hết
Nhưng chỉ co font chử của bài viết bị thay đổi thôi
Mình restore lại trên cùng một host mà??

Người gửi: masodeptrai Dec 24 2005, 06:52 PM

QUOTE
Đúng vậy, mà lỗi vậy theo Tacaza không sửa được thì chết rùi. Có cách nào backup database lại nhưng chỉ backup riêng member, categories và forum không? 


Rất đơn giản, như bạn đã biết, khi cài 1 forums IBF thì chỉ có 60 table. Đầu tiên các bạn cứ restore hết các table từ database, rồi del những table thừa đi (bạn phải so giữa 2 table giữa cái mới và cái cũ) - Bạn có thể bỏ 4 table của skin đi.

-------
Như hacker nói thì việc bạn restore dữ liệu bị lỗi font, bạn có thể mắc phải những trường hợp sau:
-Version của các bạn phpMyAdmin khác nhau (trường hợp dùng phpAdmin)
-Database khi bạn tạo giữa 2 host không khớp nhau (charset đó)
-Mình không biêt 9.gif

Để khắc phục thì theo kinh nghiệm quý báu của mình thì bạn thử làm như sau:
-Dùng mysql_Tool để back up hay restore (đã post ở diễn đàn này rồi, bạn chịu khó tìm nhé, mình hơi lười 5.gif )
+Lưu ý với những bạn dùng localhost (trên pc), với các phần mềm như easyphp1.8 thì khi bạn tạo database nó cho bạn chọn nhiều loại ngôn ngữ, nhưng các bạn nên chọn loại charset=latin 1.
Khi các bạn lấy database từ localhost (từ pc) ra host ở ngoài mạng thì bạn edit lại file database (dùng notepad xoá tất các nhưng chữ "CHARSET=latin1" đi là ổn.
Với cách làm như trên thì không bao giờ bị lỗi font chữ.

Với cách chỉ dùng phpMyadmin thì mình đã thử và rất chưa thành công, vì khi edit lai file database thì không thể restore được.

-- Những cách trên mình đã làm qua, không phải nói xuông --

Người gửi: Husky Jun 21 2006, 12:02 AM

Còn một cách để sửa lại font chữ khi đã lỡ để charset=iso ... hixhix ! Cách này hơi ... ngu xíu nhưng mình thử là được !! >"<

Các bạn vào View / Encoding / Auto-Select !! Thử xem seo

Người gửi: Tacaza Jun 21 2006, 12:18 AM

Cái này là yêu cầu người xem phải điều chỉnh font chữ hiện thị trong browser cho trang web đang xem, vấn đề này hoàn toàn khác với lỗi font chữ trong database (nếu đã lỗi font thì có điều chỉnh character set ở browser kiểu gì cũng vẫn lỗi hết).
Cái bạn nói liên quan tới trình duyệt, có thể dùng thẻ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> để trình duyệt hiển thị character set nhất định theo ý mình. Cái này hoàn toàn không liên quan tới vấn đề lỗi font chữ trong database đang bàn đâu bạn.

Người gửi: Haroldkn Apr 2 2016, 02:23 PM

Are you still battling with getting your online business started?
Well, your concerns ends now! Subscribe now to get started!

http://mavwrekmarketing.com/instamate-authentic-review/

Người gửi: Haroldkn Apr 2 2016, 02:24 PM

Are you still battling with getting your online business started?
Well, your concerns is over now! Register now to get started!

http://mavwrekmarketing.com/instamate-authentic-review/

Người gửi: hoangtl Jul 23 2021, 02:26 PM

bài viết chia sẻ rất hữu ích. đúng là phải back up thường xuyên dữ liệu tránh tình trạng mất dữ liệu gây ảnh hưởng công việc

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)