當前位置:首頁 » 編程語言 » sql導入mongodb
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql導入mongodb

發布時間: 2022-02-25 09:46:15

❶ Oracle或sqlserver或mysql如何連接到MongoDB

個人感覺,,這時候,,你需要一個 Navicat Premium

❷ 關系型資料庫Oracle的數據導入非關系型資料庫mongodb。

首先要確定,你們為什麼需要將關系型資料庫中的數據導入到NoSql資料庫中?是為了達到什麼樣的需求才這么做的。

我也是做開發的,我推薦以下幾點,不要嘗試將關系型資料庫轉換為非關系型資料庫:
1、節約維護成本;
2、軟硬體成本。Mongodb存儲數據需要更多的存儲空間。(當然,相對不同系統,硬體的配置也不盡相同);
3、為分布式而分布式;
4、從軟體角度上,單純為了提高IO的速度而進行轉換;

如果非要強行移植,那麼需要考慮一下幾點:
1、Mongodb的維護以及災備需要相對專業的開發人員擔當(如果你們的運維就會,就當我沒說過),因為許多Mongodb的配置都需要一些簡單的javascript語法支持的,開發人員會比較容易上述;
2、Mongodb是「非關系」型的,所以以嚴格遵守範式所設計的關系型資料庫進行移植時,需要考慮多表查詢的效率。一般來講,關系表要對數據進行冗餘才能達到高效率的查詢。你只能通過代碼的方式將多個主表和關系表連同一個數據查詢表一同維護,增加的代碼復雜度是顯而易見的。
3、關系型資料庫中很多特性在Mongodb中都沒有,在移植之前必須要考慮清楚。例如自增主鍵、聯合主鍵(可以用唯一索引代替)、相關驅動和連接方式等等(本人用的mssql,所以只能舉mssql的例子。);
4、因為Mongodb使用的是操作系統自身的文件存儲系統對存儲介質進行操作和維護的,所以會在頻繁進行增、刪操作時產生磁碟碎片。(開發人員不用太關系這個);
5、最後要說道一下Mongodb的查詢,如果你的關系型資料庫中之前有很多的多表連接查詢(3張以上),則請不要嘗試移植。否則只能參考2進行操作才能達到性能和效率最大化;

❸ 教你如何利用MySQL學習MongoDB之導入和導出

1、MySQL導入和導出(1)、mysqlimport此工具位於mysql/bin目錄中,是MySQL的一個載入(或者說導入)數據的一個非常有效的工具。這是一個命令行工具。有兩個參數以及大量的選項可供選擇。這個工具把一個文本文件(text file)導入到你指定的資料庫和表中。比方說我們要從文件student.txt中把數據導入到資料庫class中的表 student中:mysqlimport class.student student.txt(2)、load data infile這個命令與mysqlimport非常相似,但這個方法可以在MySQL命令行中使用。 如mysqlimport工具一樣,這個命令也有一些可以選擇的參數。比如您需要把自己的電腦上的數據導入到遠程的資料庫伺服器中,您可以使用下面的命令:Load data local infile "d:\student.txt" into table student;上面的local參數表示文件是本地的文件,伺服器是您所登陸的伺服器。這樣就省去了使用ftp來上傳文件到伺服器,mysql替你完成了。(3)、mysqlmpmysqlmp工具很多方面類似相反作用的工具mysqlimport。它們有一些同樣的選項。但mysqlmp能夠做更多的事情。它可以把整個資料庫裝載到一個單獨的文本文件中。這個文件包含有所有重建您的資料庫所需要的SQL命令。這個命令取得所有的模式並且將其轉換成DDL語法,取得所有的數據,並且從這些數據中創建INSERT語句。這個工具將您的資料庫中所有的設計倒轉。因為所有的東西都被包含到了一個文本文件中。這個文本文件可以用一個簡單的批處理和一個合適SQL語句導回到MySQL中。這個工具令人難以置信地簡單而快速。決不會有半點讓人頭疼地地方。因此,如果您像裝載整個資料庫mydb的內容到一個文件中,可以使用下面的命令:bin/mysqlmp –p mydb > mydb.txt2、MongoDB導入和導出(1)、mongoexport導出工具MongoDB提供了mongoexport工具,可以把一個collection導出成json格式或csv格式的文件。可以指定導出哪些數據項,也可以根據給定的條件導出數據。工具幫助信息如下:[root@localhost bin]# ./mongoexport --help options: --help proce help message -v [ --verbose ] be more verbose (include multiple times for more verbosity e.g. -vvvvv) -h [ --host ] arg mongo host to connect to ( /s1,s2 for sets) --port arg server port. Can also use --host hostname:port --ipv6 enable IPv6 support (disabled by default) -u [ --username ] arg username -p [ --password ] arg password --dbpath arg directly access mongod database files in the given path, instead of connecting to a mongod server - needs to lock the data directory, so cannot be used if a mongod is currently accessing the same path --directoryperdb if dbpath specified, each db is in a separate directory -d [ --db ] arg database to use -c [ --collection ] arg collection to use (some commands) -f [ --fields ] arg comma separated list of field names e.g. -f name,age --fieldFile arg file with fields names - 1 per line -q [ --query ] arg query filter, as a JSON string --csv export to csv instead of json -o [ --out ] arg output file; if not specified, stdout is used --jsonArray output to a json array rather than one object per line [root@localhost bin]# 下面我們將以一個實際的例子說明,此工具的用法:將foo庫中的表t1導出成json格式:[root@localhost bin]# ./mongoexport -d foo -c t1 -o /data/t1.json connected to: 127.0.0.1 exported 1 records [root@localhost bin]# 導出成功後我們看一下/data/t1.json文件的樣式,是否是我們所希望的:[root@localhost data]# more t1.json { "_id" : { "$oid" : "4f927e2385b7a6814a0540a0" }, "age" : 2 } [root@localhost data]# 通過以上說明導出成功,但有一個問題,要是異構資料庫的遷移怎麼辦呢?

❹ windows怎麼用mongodb導入數據

windows怎麼用mongodb導入數據
MongoDB是目前非常流行的一種NoSQL資料庫,其靈活的存儲方式備受開發人員青睞。本文就介紹一下如何安裝並設置成Windows服務的方法。

1、安裝MongoDB
Windows版本的MongoDB無需安裝,只要解壓就能使用了。

2、將MongoDB設置成Windows服務
這個操作就是為了方便,每次開機MongoDB就自動啟動了。

首先在解壓後的MongoDB文件夾裡面建立data和logs兩個目錄,看名字就知道,data存放數據,logs存放日誌文件。
然後建立文本文件:mongod.cfg
裡面寫上(注意,裡面的路徑要根據你的MongoDB實際路徑):
logpath=E: oolsmongodb-win32-i386-2.6.4logsMongoDB.log
dbpath=E: oolsmongodb-win32-i386-2.6.4data
然後在命令行裡面運行:
mongod --config E: oolsmongodb-win32-i386-2.6.4mongod.cfg --install

這樣就在Windows下成功建立了MongoDB的服務。
在「運行」中輸入「services.msc」,打開「服務」管理界面。

點擊列表中的「MongoDB」,在點擊「啟動」按鈕,就將MongoDB成功啟動了。

❺ 如何使用sql server導入 mongodb的導出數據

MongoDB 是nosql 的一種存儲資料庫. 也就是說 所有業務都要轉化.

而且這種分布式並沒有帶來什麼好處.況且即使是銀行,數據量是你的萬億倍,也沒聽說用mongodb啊!

❻ mongodb 設置許可權後 怎麼導入數據

1.
輸入命令:show
dbs,你會發現它內置有兩個資料庫,一個名為admin,一個名為local。local好像沒啥用,如果哪位在使用過程中發現了這個local表的用途,希望能夠留言提醒,那我們就專心來說說admin表
2.
輸入命令:use
admin,你會發現該db下包含了一個system.user表,呵呵,沒錯,這個表就等同於mssql中的用戶表,用來存放超級管理員的,那我們就往它裡面添加一個超級管理員試試看
3.
輸入命令:db.adser('sa','sa'),這里我添加一個超級管理員用戶,username為sa,password也為sa,即然我們添
加了超級管理員,那咱們就來測試下,看看咱們再次連接mongodb需不需要提示輸入用戶名、密碼,我們先退出來(ctrl+c)
4.
輸入命令:use
admin
5.
輸入命令:show
collections,查看該庫下所有的表,你會發現,mongodb並沒有提示你輸入用戶名、密碼,那就奇怪了,這是怎麼回事呢?在文章最開始提到了,
mongodb默認設置為無許可權訪問限制,即然這樣,那我們就先把它設置成為需要許可權訪問限制,咱們再看看效果,怎麼設置呢?
6.
在注冊表中,找到mongodb的節點,在它的imgpath中,我們修改一下,加入
-auth,如下所示:
"d:\program
files\mongodb\bin\mongod"
-dbpath
e:\work\data\mongodb\db
-logpath
e:\work\data\mongodb\log
-auth
-service
7.
輸入命令:use
admin

❼ 有沒有人嘗試過使用普通的sql語句去操作mongodb

您好.

我也碰到這個問題,需要把mysql的查詢轉移到mongodb裡面

有個php-sql-parser https://github.com/dogmatic69/PhpSqlParser

可以解析sql語句,然後得手動寫sql->mongodb轉換.

簡單的單表應該可以實現,join得手動拆分.

如果還有問題,可以繼續追問,感謝。

❽ 如何從MongoDB導入/導出數據

在開始菜單的運行框中輸入dtswiz,然後選擇源數據源和目標數據源,例如:如果是從SQLServer中導出到Excel中,那麼那麼需要在其中輸入SQL語句或者選擇指定資料庫中的一個或多個表,然後再指定Excel的路徑和文件名,如果是從Excel導入到SQLServer中,就簡單一些,選擇好具體的Excel文檔後,再選擇其中的某一個Sheet(工作表),然後再設置SQLServer的指定資料庫即可,還可以從SQLServer中的一個資料庫導入到SQLServer的另一個資料庫中,方法類似

❾ 下面的sql語句對應的MongoDB語句該怎麼寫

創建表插入數據

create table a(序號 int,單位 varchar(10),工作 varchar(10),得分 int,打分 varchar(10)) insert into a values (1,'財務','gz1',100,'黎明')insert into a values (2,'財務','gz2',90,'黎明')insert into a values (3,'財務','gz3',80,'黎明')insert into a values (4,'銷售','gz4',70,'黎明')insert into a values (5,'銷售','gz5',60,'黎明')insert into a values (6,'銷售','gz6',50,'黎明')insert into a values (7,'人事','gz7',40,'黎明')insert into a values (8,'人事','gz8',30,'黎明')insert into a values (9,'人事','gz9',20,'黎明')insert into a values (10,'財務','gz1',88,'趙一')insert into a values (11,'財務','gz2',86,'趙一')insert into a values (12,'財務','gz3',78,'趙一')insert into a values (13,'銷售','gz4',90,'趙一')insert into a values (14,'銷售','gz5',64,'趙一')insert into a values (15,'銷售','gz6',85,'趙一')insert into a values (16,'人事','gz7',90,'趙一')insert into a values (17,'人事','gz8',43,'趙一')insert into a values (18,'人事','gz9',68,'趙一')

執行:

select 單位,工作,sum(case when 打分='黎明' then 得分 else 0 end) 黎明,sum(case when 打分='趙一' then 得分 else 0 end) 趙一from a group by 單位,工作

結果: