可以使用這樣的命令從服務(wù)器A直接導(dǎo)入到服務(wù)器B,需要設(shè)定好權(quán)限 mysqldump -hhostnameA -uusernameA -ppasswordA db_name | mysql -hhostnameB -uusernameB -ppasswordB -C db_name
創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比吳橋網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式吳橋網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋吳橋地區(qū)。費(fèi)用合理售后完善,10年實體公司更值得信賴。
1.首先將excel文檔另存成CSV(逗號分隔)文檔,存儲過程中會有一系列的警告提示,一路OK下來即可。
2.用記事本的打開方式打開剛剛保存的.csv文件,發(fā)現(xiàn),列與列之間用逗號(,)隔開:
3.將其另存為.txt文件,并且編碼要選擇UTF-8:
4.成功保存txt文件后就可以用PHPmyadmin導(dǎo)入該文件了。但這里一定要注意一點,該文件的名字一定不能出現(xiàn)中文,文件的存放路徑也不能有中文出現(xiàn)。如果出現(xiàn)中文,導(dǎo)入過程中會提示你找不到文件路徑。
5.在SQL菜單中輸入如下命令:
Load Data InFile 'D:/1.txt' Into Table `res_type_collect` fields terminated by ',' lines terminated by '\n'
其中'D:/1.txt'是文件存放的絕對路徑,注意是“/”而不是“\”;Table 后的值是你的表名;fields terminated by后的值是列與列間的分割標(biāo)識(個人感覺“,”比較靠譜,不易出錯。而tab可能在導(dǎo)入的時候出現(xiàn)問題);lines terminated by后面的值是行與行之間的分割標(biāo)識,這個沒的說,一般都是“\n”.
6.點擊“執(zhí)行”后,上方提示成功插入X行數(shù)據(jù),查看:
7.注意上圖,txt文件的第一行的第一個數(shù)據(jù)導(dǎo)入出現(xiàn)了錯誤,這應(yīng)該是軟件的問題吧,不過不影響,因為僅僅這一項錯了,所以手動改過來就可以了。由此便完成了MySQL批量導(dǎo)入Excel、txt數(shù)據(jù)的任務(wù)啦。
8.點擊菜單欄-文件-另存為
9.彈出框輸入 輸出文件名稱,文件類型下拉欄選項TXT
10.彈出窗口,勾選“分隔符號”,點擊下一步。
11.再次彈出窗口,勾選分隔符號欄的“逗號“。
12.文件自動載入·,TXT就完整導(dǎo)入Excel了,你可以在Excel界面自定義修改。
這個就不是數(shù)據(jù)庫的問題了,這要看你程序是什么樣的,對于SSH框架來說
在數(shù)據(jù)庫表映射對象里面可以增加one-to-one的關(guān)聯(lián),
保存時相關(guān)信息還是要存放到兩個對象里面的,刪除時只刪除一個就可以。
最笨的方法就是,保存時各存各的,刪除時,按照姓名找到另一個表的相關(guān)數(shù)據(jù),一并刪除。
題外話:為什么要拿姓名做連接主鍵呢?(考慮到重名)為什么非要拆成兩個表呢?(完全沒必要的啊,幾十個列的表我也是見過的,知道哪是哪就可以了)
在mysql中,每個數(shù)據(jù)庫最多可創(chuàng)建20億個表,一個表允許定義1024列,每行的最大長度為8092字節(jié)(不包括文本和圖像類型的長度)。當(dāng)表中定義有varchar、nvarchar或varbinary類型列時,如果向表中插入的數(shù)據(jù)行超過8092字節(jié)時將導(dǎo)致transact-sql語句失敗,并產(chǎn)生錯誤信息。sql
server對每個表中行的數(shù)量沒有直接限制,但它受數(shù)據(jù)庫存儲空間的限制。每個數(shù)據(jù)庫的最大空間1048516tb,所以一個表可用的最大空間為1048516tb減去數(shù)據(jù)庫類系統(tǒng)表和其它數(shù)據(jù)庫對象所占用的空間。
什么系統(tǒng)?兩個庫是不是在同一臺機(jī)?
linux下個人做法:
1.同一臺機(jī)
用mysqldump導(dǎo)出表數(shù)據(jù)(具體使用可以查一下)
mysqldump -h host -P port -p password -u user database --default-character-set=utf8 --add-drop-table tablename -r /tmp/table.sql
再導(dǎo)入數(shù)據(jù)
mysqldump -h host -P port -p password -u user database tablename /tmp/tablename.sql
或者在進(jìn)入mysql后用source命令導(dǎo)入。
2.不同的機(jī),就需要先把數(shù)據(jù)文件導(dǎo)出,然后復(fù)制到另外一臺機(jī),再進(jìn)行1的導(dǎo)入操作。
windows下沒試過,一般都直接用phpMyAdmin來操作了,界面操作沒什么說的。
你是要導(dǎo)出什么樣的格式的?
這里推薦一款軟件? Navicat 8.2 MySQL?
這是一款很不錯的mysql管理軟件,可以很好地處理mysql數(shù)據(jù)庫,可以遠(yuǎn)程鏈接
這里可以備份mysql數(shù)據(jù)
當(dāng)你備份好后,想把它轉(zhuǎn)換成*.sql文件都可以
或者
這樣就能得到你的mysql數(shù)據(jù)庫的所有表和數(shù)據(jù)了
還可以原數(shù)據(jù)
或者
有很多mysql數(shù)據(jù)備份工具和軟件,百度一下