中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Navicat運行sql文件導入數據不全或導入失敗如何解決

發布時間:2023-03-07 16:09:20 來源:億速云 閱讀:317 作者:iii 欄目:開發技術

本文小編為大家詳細介紹“Navicat運行sql文件導入數據不全或導入失敗如何解決”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Navicat運行sql文件導入數據不全或導入失敗如何解決”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

    前言:

    我們平時想把數據從一個數據庫中導入另外一個數據庫中的時候 

    一般都是把所需的數據表進行轉儲sql文件 然后再運行sql文件 導入新的數據庫中

    這么做 數據少的時候一般不會出現什么錯 

    但是如果數據量比較大 表比較多 就會出現缺少數據表 或者缺少數據

    解決問題辦法:

    第一:

    先從數據庫的配置文件下手

    找到服務器上的MYSQL安裝目錄下的my.ini文件 然后去修改 記得重啟

    Navicat運行sql文件導入數據不全或導入失敗如何解決

    查找max_allowed_packet屬性

    max_allowed_packet=50M

    或者再改大一點都行

    第二:

    從navicat修改數據庫存儲大小 和第一個有點相似  我2個都改了

    命令:

    //查看當前max_allowed_packet的大小

    show global variables like 'max_allowed_packet';

    //修改max_allowed_packet的大小

     set global max_allowed_packet=1024*1024*50;

    改過后查詢以下大小有沒有改變 改變了就成功了

    第三:

    導入的數據庫和導出得數據庫編碼和結構不同

    Navicat運行sql文件導入數據不全或導入失敗如何解決

    修改數據庫的表字符集同步

    第四: 

    更改嚴格模式,執行下列sql后再導入sql文件;

    SET sql_mode = '';
    SET GLOBAL sql_mode = '';

    Navicat運行sql文件導入數據不全或導入失敗如何解決

    注意:

    當用"SET sql_mode=''"時,mysql清除的默認的模式信息,

    但是這也有一個問題,那就mysql不會作入侵檢測,錯誤提示,

    這就要求程序員在進行sql操作的時候更加小心。可以將上面sql加入到sql文件中先執行

    第五: 

    在我們導入數據的時候 把 "在每個運行中運行多個查詢" 給對掉  這么會慢一些 但是數據不會沖突 不會讓數據進行減少

    Navicat運行sql文件導入數據不全或導入失敗如何解決

    第六: 

    這個方法有點玄學 可信度有待調查 可以嘗試嘗試大家

    在數據庫中選擇運行sql文件 沒有在表中選擇 運行sql文件 會準確度高一些

    Navicat運行sql文件導入數據不全或導入失敗如何解決

    Navicat運行sql文件導入數據不全或導入失敗如何解決

    第七: 

    使用命令行導入導出

    一、window環境

    A. 導出.sql

    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

    B. 導入.sql

    常用source 命令

    進入mysql數據庫控制臺,如

    mysql -u root -p
    mysql>use 數據庫

    然后使用source命令,后面參數為腳本文件(如這里用到的.sql)

    mysql>source d:/dbname.sql

    導入數據到數據庫

    mysql -uroot -D數據庫名

    導入數據到數據庫中得某個表

    mysql -uroot -D數據庫名 表名

    二、linux環境

    A. 導出.sql

    導出數據庫用mysqldump命令(注意mysql的安裝路徑,即此命令的路徑):

    1、導出數據和表結構:

    mysqldump -u 用戶名 -p 參數(可選) 數據庫名 >/home/sql/ 數據庫名.sql

    mysqldump -u root -p --default-character-set=utf8 db_name>/home/sql/fileName.sql

    敲回車后會提示輸入密碼

    2、只導出表結構

    mysqldump -u用戶名 -p密碼 -d 數據庫名 > 數據庫名.sql

    /usr/local/mysql/bin/ mysqldump -uroot -p -d abc > abc.sql

    注:/usr/local/mysql/bin/ —> mysql的data目錄

    B. 導入.sql

    1、首先建空數據庫

    mysql>create database abc;

    2、導入數據庫

    方法一:

    (1)選擇數據庫

    mysql>use abc;

    (2)設置數據庫編碼

    mysql>set names utf8;

    (3)導入數據(注意sql文件的路徑)

    mysql>source /home/abc/abc.sql;

    方法二:

    mysql -u用戶名 -p 參數(可選) 數據庫名 < 數據庫名.sql

    mysql -uabc_f -p--default-character-set=utf8 abc < abc.sql

    第八: 

    沒有用過 看到最新的navicat12帶的功能

    Navicat運行sql文件導入數據不全或導入失敗如何解決

    數據傳輸和數據同步 結構同步 打開界面看了一下 更加簡單暴力

    如果上面的都沒有解決你的問題

    可以嘗試一種簡單暴力的方法 如果要導入的數據不多

    可以把sql文件直接打開然后到navicat里面直接 查詢->新建查詢  然后輸入sql

    看看到底哪個地方報錯了 然后再對應去修改

    Navicat運行sql文件導入數據不全或導入失敗如何解決

    讀到這里,這篇“Navicat運行sql文件導入數據不全或導入失敗如何解決”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    许昌市| 海城市| 盐津县| 阜康市| 沧源| 瑞丽市| 广德县| 邹城市| 延安市| 类乌齐县| 天台县| 卫辉市| 梅河口市| 嘉荫县| 沙洋县| 鄂州市| 荣昌县| 瑞昌市| 莎车县| 丰原市| 仁化县| 郧西县| 班戈县| 宁波市| 高邮市| 昌平区| 垣曲县| 于田县| 乌拉特前旗| 资源县| 玉龙| 买车| 溧阳市| 闵行区| 东乌| 黄大仙区| 阿拉善右旗| 正蓝旗| 牡丹江市| 道孚县| 金乡县|