mysql數據到導入導出 500MB數據
問題:500M的庫表數據,需要導入到新的數據庫中。
首先通過控制台進入mysql
mysql -u root -p 12345
CREATE DATABASE `demo` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
use demo;切換數據庫
source file.sql 導入數據,這其中file.sql在 mysql的bin目錄下,也可以修改成自己的路徑
問題:導入後出現中文亂碼。。。。
重新再來
drop database demo
C utf8;//切換編碼
use demo ;
source file.sql;
--------------------------------------------
mysqldump 數據庫名 -u root -p -h IP地址 > file.sql
其它關於mysql數據導出導入數據庫
導出
mysqldump方法
mysqldump -u用戶名 -p密碼名 database [table]> 目標文件
導入
mysql -uroot -proot
use database
source 目標文件;
PS: 這種方法是導出整個表數據,並且帶著建表信息,假如導入的數據庫有同名的表,會被替換
PS: 可以添加條件
mysql -uroot -proot [-n] [-t] [-d] database [table]>name
-t 不包含創建表的信息
-d不包含數據信息
--w or -w篩選條件
1 例:先進入dos cmd命令模式 Ctrl旁邊的鍵+R
2 導出 mysqldump -uroot -proot test student -t -w studentno=10101 >stu
3 導入 mysql -uroot -proot
4 mysql>use test
5 mysql>source stu
方法二
into outfile
load data infile
例子
導出
mysql -uroot -proot
mysql>use test
mysql>select * from student where studentno=10101 into outfile './stu';
導入
mysql -uroot -proot
mysql>use test
mysql>load data infile './stu' into table student;
導出xml
mysqldump --xml -uroot -proot [database] [table]> name.xml
[test]
mysqldump --xml -uroot -proot test>a.xml
mysqldump --xml -uroot -proot test dept>a.xml
mysql -X -uroot -proot -e "use test;select * from dept">a.xml[方法2]
導入xml文件內容到數據庫
mysql> create table xmlt(
-> id int ,
-> doc blob
-> );
mysql> insert into xmlt values(1,load_file('/home/a.xml') );
mysql> select * from xmlt;
MYSQL常用命令
1.導出整個數據庫
mysqldump -u 用戶名 -p --default-character-set=latin1 數據庫名 > 導出的文件名(數據庫默認編碼是latin1)
mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql
2.導出一個表
mysqldump -u 用戶名 -p 數據庫名 表名> 導出的文件名
mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
3.導出一個數據庫結構
mysqldump -u wcnc -p -d –add-drop-table smgp_apps_wcnc >d:wcnc_db.sql
-d 沒有數據 –add-drop-table 在每個create語句之前增加一個drop table
4.導入數據庫
A:常用source 命令
進入mysql數據庫控制台,
如mysql -u root -p
mysql>use 數據庫
然後使用source命令,後面參數為腳本文件(如這裡用到的.sql)
mysql>source wcnc_db.sql
B:使用mysqldump命令
mysqldump -u username -p dbname < filename.sql
C:使用mysql命令
mysql -u username -p -D dbname < filename.sql