方法一 進入命令行
mysql –u用戶名 –p密碼 –D資料庫<【sql腳本文件路徑全名】,示例:
mysql –uroot –p123456 -Dtest < /home/zj/create_table.sql
注意:
如果在sql腳本文件中使用了use 資料庫,則-D資料庫選項可以忽略
方法二 進入mysql的控制台後,使用source命令執行
Mysql>source 【sql腳本文件的路徑全名】 或 Mysql>\. 【sql腳本文件的路徑全名】,示例:
source /home/zj/create_table.sql
② mysql命令行用source執行sql,日誌輸出
有時候,我們要在命令行登錄mysql,然後用source命令執行某sql文件,這樣執行時,日誌閃得飛快,還沒來得及看,一下子就過了。這樣不利於我們查看執行過程中的日誌,我們不清楚是否存在執行錯誤的情況。那要怎麼記錄一下這樣的日誌呢?用tee就可以
這樣會在/tmp目錄下產生一個日誌文件,接著再執行你想要的source /root/xx.sql命令吧
在mysql命令行執行的所有輸出都會記錄到這個日誌文件里了
③ 進入mysql控制台後執行sql腳本的方法
使用source命令執行sql腳本。
進入mysql的控制台後,使用source命令執行
Mysql>source
【sql腳本文件的路徑全名】
具體步驟:
假設運行sql腳本是hello.sql,在控制台下輸入:
mysql>source
c:\hello
world\hello.sql(注意路徑不用加引號)
或者
\.
c:\hello
world\hello.sql
然後回車即可
④ mysql用source命令導入.sql
可以做以下檢查:
1.當前使用的資料庫是否為目標資料庫
2.源文件路徑是否存在
3.版本是否匹配
source的用法如下:
將備份的數據還原
所謂備份數據的還原,就是將剛剛生成的sql語句,執行即可!
首先創建一個新的資料庫:
mysql> create database student_3;
Query OK, 1 row affected (0.02 sec)
然後選中該資料庫:
mysql> use student_3;
Database changed
然後在該資料庫中還原數據,則原先的資料庫中的表都會備份到該資料庫中:
mysql> source E:/back.sql;
Query OK, 0 rows affected (0.00 sec)
⑤ 為什麼使用Mysql命令source導入.sql文件時總是出錯
換工具導入唄,navcat或者sqlyog
命令導入就只有這樣的方法,source
地址,語法是沒有錯誤的,你導入失敗可能的原因有很多啊,比如說sql中沒有創建資料庫的語句,或者由於cmd命令行的限制產生的其他錯誤啊,CMD本身就是有局限性的,太大的就是導入不進去,這個不能強求。
⑥ Linux資料庫:mysql下如何執行sql腳本_第2頁
同樣,可以手動執行sql文件,具體步驟如下:
1、使用root帳戶登錄到MySQL伺服器;
2、執行source命令:
mysql>
source
c:/test.sql
注意:文件路徑中建議使用「/」,如果使用「\」,要首先進行轉義即「\\」,否則可能會出現錯誤。
另外還有一個load命令可以批量插入數據,但是這個對文件中數據格式的要求比較嚴格,否則容易出現錯誤,很少使用。
mysql
查看所有用戶的語句
輸入指令select
user();
例:(項目來源:尚學堂)struts_training_itemmgr.sql內容如下:
Sql代碼
DROP
TABLE
t_items;
DROP
TABLE
t_data_dict;
CREATE
TABLE
t_items
(
item_no
varchar(20)
not
null
key,
item_name
varchar(20)
not
null,
spec
varchar(20),
pattern
varchar(10),
category
varchar(20),
unit
char(20)
);
CREATE
TABLE
t_data_dict
(
id
varchar(5)
not
null
key,
category
varchar(20),
name
varchar(30)
);
#
t_data_dict的初始化數據
INSERT
INTO
t_data_dict(id,category,name)
values('B01','item_category','精通Spring2.X
Java
Web開發');
INSERT
INTO
t_data_dict(id,category,name)
values('B02','item_category','Java語言與面向對象程序設計');
INSERT
INTO
t_data_dict(id,category,name)
values('B03','item_category','2B鉛筆');
INSERT
INTO
t_data_dict(id,category,name)
values('B04','item_category','HOTROCK
notebook');
INSERT
INTO
t_data_dict(id,category,name)
values('C01','item_unit','本');
INSERT
INTO
t_data_dict(id,category,name)
values('C02','item_unit','支');
INSERT
INTO
t_data_dict(id,category,name)
values('C03','item_unit','箱');