Django數(shù)據(jù)怎么從sqlite遷移數(shù)據(jù)到MySQL

Django數(shù)據(jù)怎么從sqlite遷移數(shù)據(jù)到MySQL,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

專業(yè)領(lǐng)域包括成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)、商城建設(shè)、微信營銷、系統(tǒng)平臺開發(fā), 與其他網(wǎng)站設(shè)計(jì)及系統(tǒng)開發(fā)公司不同,成都創(chuàng)新互聯(lián)的整合解決方案結(jié)合了幫做網(wǎng)絡(luò)品牌建設(shè)經(jīng)驗(yàn)和互聯(lián)網(wǎng)整合營銷的理念,并將策略和執(zhí)行緊密結(jié)合,為客戶提供全網(wǎng)互聯(lián)網(wǎng)整合方案。

昨天快速搭建了一套自己的知識庫。感覺一下子有了很多的事情要做,至少得讓自己用得舒服些。

沒想到有了這個小工具之后,我發(fā)現(xiàn)我之前過得真是刀耕火種的信息收集。為什么這么說,因?yàn)槲覀兠刻於紩x大量的文章,如果你決定收藏了,在微信里面就默默的點(diǎn)擊“收藏”,然后不知不覺,已經(jīng)收藏了成百上千篇,微信收藏的文章有個缺點(diǎn)就是我們在手機(jī)端很難去管理,通過關(guān)鍵字或者其他標(biāo)簽可以搜索出來,但是屏幕里只能顯示出來差不多3-4條信息。如果想根據(jù)時間去排序之類的基本上無法實(shí)現(xiàn),我也一直納悶?zāi)壳皼]有見到一個很給力的工具來管理收藏夾。

這僅僅是手機(jī)端的,如果是電腦端,那就更多了,我們的瀏覽器有收藏夾,但是本身沒有排序功能,如果要做更多的篩選,基本靠眼里。

而且比較糾結(jié)的就是,有時候一打開一下子翻騰出所有的文章,頓時就會讓人有些眩暈,而且作為書簽,本身沒有層級感。

哪怕做了細(xì)致的分類,但是一個目錄下還是難免會生成大量的鏈接,完全無法排序。

Django數(shù)據(jù)怎么從sqlite遷移數(shù)據(jù)到MySQL

所以我就退而求其次,把一些鏈接寫道每天的工作記錄里面,但這樣明顯更糟糕,因?yàn)檫@些信息我不去找,壓根找不到。所以想想真是悲涼,我遺失了多少重要的信息。

然后我痛下決心,先改善自我生活,比如下面的url管理方式,我可以指定排序的規(guī)則。做多個類別的拆分,而且更重要的基于web,如果用Django的admin模板,完全不用寫前端頁面了。

Django數(shù)據(jù)怎么從sqlite遷移數(shù)據(jù)到MySQL

所以我風(fēng)風(fēng)火火用了windows里的配置,為了簡化,用了sqlite存儲數(shù)據(jù),很快就配置了30多條的url信息。

大類別分了這些,所以可以看出來我想做的不是一個簡單的url收集,而想讓它變得更有意思。不局限于技術(shù)方向。

Django數(shù)據(jù)怎么從sqlite遷移數(shù)據(jù)到MySQL

說了這么多,這么做馬上就碰到了一個潛在的問題,數(shù)據(jù)庫是sqlite,而我們實(shí)際使用肯定是MySQL,從使用和數(shù)據(jù)安全性上來說,我們更傾向于用MySQL,但是sqlite和MySQL本身不是完全兼容的,怎么同步這些數(shù)據(jù)。

管理sqlite很簡單,數(shù)據(jù)都存放在一個看起來很普通的文件里面,我們只需要解析這一個文件即可。它更適合于嵌入式,本身是不支持事務(wù)的。

怎么把sqlite的數(shù)據(jù)同步到MySQL就是擺在我面前的一個問題。

我做了快速的嘗試,用了如下的方式,僅供參考。

  1. 把sqlite的數(shù)據(jù)文件拷貝到linux里面,因?yàn)槲艺降姆?wù)都是在linux下,同樣的應(yīng)用我使用了MySQL,這個數(shù)據(jù)文件有個好處就是從windows拷貝到linux,還是能夠正常解析的,登錄使用命令sqlite3即可。

  2. 查看sqlite的數(shù)據(jù)庫情況如下,語法和命令略有差異。

    sqlite> .databases

    seq name file

    --- --------------- -----------------------

    0 main /root/test/db.sqlite3

    目前存在的表有這些。

    sqlite> .tables

    auth_group django_content_type

    auth_group_permissions django_migrations

    auth_permission django_session

    auth_user km_child_category

    auth_user_groups km_parent_category

    auth_user_user_permissions km_url_info

    django_admin_log

    這么多的表怎么同步呢,其實(shí)是做一個選擇,我們建立的models.py里面的信息是需要的,也就意味著我們只需要同步其中的3個表即可。

  3. 我們使用.dump選項(xiàng)即可輕松導(dǎo)出數(shù)據(jù)。

    sqlite3 db.sqlite3 .dump

    得到的SQL類似下面的形式,大部分的語法還是兼容的。

    CREATE TABLE "km_parent_category" ("category_pid" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "category_name" varchar(200) NOT NULL, "category_memo" varchar(200) NOT NULL);

    INSERT INTO "km_parent_category" VALUES(1,'Python開發(fā)技術(shù)','test1');

    INSERT INTO "km_parent_category" VALUES(2,'MySQL','test2');

    INSERT INTO "km_parent_category" VALUES(3,'個人公眾號文章','jianrong-notes');

    INSERT INTO "km_parent_category" VALUES(4,'人文歷史',' ')

  4. 如果要導(dǎo)出csv就加-csv選項(xiàng)即可,或者直接生成.sql文件。

  5. 如果是sql文件需要去掉腳本里的“”,要不解析會出錯。

  6. 把SQL部署到MySQL,就行程了一個閉環(huán),我們就可以按照自己的想法來補(bǔ)充完善了。

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。

網(wǎng)站題目:Django數(shù)據(jù)怎么從sqlite遷移數(shù)據(jù)到MySQL
網(wǎng)站URL:http://muchs.cn/article6/geppog.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、小程序開發(fā)企業(yè)網(wǎng)站制作、電子商務(wù)網(wǎng)站設(shè)計(jì)公司、網(wǎng)站改版

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管