public class MongoDBJDBC {
public static void main(String[] args) {
try {
// 實例化Mongo對象,連接27017埠
Mongo mongo = new Mongo("localhost", 27017);
// 連接名為yourdb的資料庫,假如資料庫不存在的話,mongodb會自動建立
DB db = mongo.getDB("test");
// Get collection from MongoDB, database named "yourDB"
// 從Mongodb中獲得名為yourColleection的數據集合,如果該數據集合不存在,Mongodb會為其新建立
DBCollection collection = db.getCollection("test1");
// 使用BasicDBObject對象創建一個mongodb的document,並給予賦值。
BasicDBObject document = new BasicDBObject();
//document.put("id", 1001);
//document.put("msg", "hello world mongoDB in Java");
// 將新建立的document保存到collection中去
//collection.insert(document);
// 創建要查詢的document
㈡ mongodb 命令行用什麼命令查詢Collection文檔結構
成功啟動MongoDB後,再打開一個命令行窗口輸入mongo,就可以進行資料庫的一些操作。
輸入help可以看到基本操作命令:
show dbs:顯示資料庫列表
show collections:顯示當前資料庫中的集合(類似關系資料庫中的表)
show users:顯示用戶!
㈢ mongodb.conf怎麼用命令生成
成功啟動MongoDB後,再打開一個命令行窗口輸入mongo,就可以進行資料庫的一些操作。
輸入help可以看到基本操作命令:
show dbs:顯示資料庫列表
show collections:顯示當前資料庫中的集合(類似關系資料庫中的表)
show users:顯示用戶
use <db name>:切換當前資料庫,這和MS-SQL裡面的意思一樣
db.help():顯示資料庫操作命令,裡面有很多的命令
db.foo.help():顯示集合操作命令,同樣有很多的命令,foo指的是當前資料庫下,一個叫foo的集合,並非真正意義上的命令
db.foo.find():對於當前資料庫中的foo集合進行數據查找(由於沒有條件,會列出所有數據)
db.foo.find( { a : 1 } ):對於當前資料庫中的foo集合進行查找,條件是數據中有一個屬性叫a,且a的值為1
MongoDB沒有創建資料庫的命令,但有類似的命令。
如:如果你想創建一個「myTest」的資料庫,先運行use myTest命令,之後就做一些操作(如:db.createCollection('user')),這樣就可以創建一個名叫「myTest」的資料庫。
資料庫常用命令
1、Help查看命令提示
help
db.help();
db.yourColl.help();
db.youColl.find().help();
rs.help();
2、切換/創建資料庫
use yourDB; 當創建一個集合(table)的時候會自動創建當前資料庫
3、查詢所有資料庫
show dbs;
4、刪除當前使用資料庫
db.dropDatabase();
5、從指定主機上克隆資料庫
db.cloneDatabase(「127.0.0.1」); 將指定機器上的資料庫的數據克隆到當前資料庫
6、從指定的機器上復制指定資料庫數據到某個資料庫
db.Database("mydb", "temp", "127.0.0.1");將本機的mydb的數據復制到temp資料庫中
7、修復當前資料庫
db.repairDatabase();
8、查看當前使用的資料庫
db.getName();
db; db和getName方法是一樣的效果,都可以查詢當前使用的資料庫
9、顯示當前db狀態
db.stats();
10、當前db版本
db.version();
11、查看當前db的鏈接機器地址
db.getMongo();
Collection聚集集合
1、創建一個聚集集合(table)
db.createCollection(「collName」, {size: 20, capped: 5, max: 100});
2、得到指定名稱的聚集集合(table)
db.getCollection("account");
3、得到當前db的所有聚集集合
db.getCollectionNames();
4、顯示當前db所有聚集索引的狀態
db.printCollectionStats();
用戶相關
1、添加一個用戶
db.addUser("name");
db.addUser("userName", "pwd123", true); 添加用戶、設置密碼、是否只讀
2、資料庫認證、安全模式
db.auth("userName", "123123");
3、顯示當前所有用戶
show users;
4、刪除用戶
db.removeUser("userName");
其他
1、查詢之前的錯誤信息
db.getPrevError();
2、清除錯誤記錄
db.resetError();
查看聚集集合基本信息
1、查看幫助 db.yourColl.help();
2、查詢當前集合的數據條數 db.yourColl.count();
3、查看數據空間大小 db.userInfo.dataSize();
4、得到當前聚集集合所在的db db.userInfo.getDB();
5、得到當前聚集的狀態 db.userInfo.stats();
6、得到聚集集合總大小 db.userInfo.totalSize();
7、聚集集合儲存空間大小 db.userInfo.storageSize();
8、Shard版本信息 db.userInfo.getShardVersion()
9、聚集集合重命名 db.userInfo.renameCollection("users"); 將userInfo重命名為users
10、刪除當前聚集集合 db.userInfo.drop();
聚集集合查詢
1、查詢所有記錄
db.userInfo.find();
相當於:select* from userInfo;
默認每頁顯示20條記錄,當顯示不下的情況下,可以用it迭代命令查詢下一頁數據。注意:鍵入it命令不能帶「;」
但是你可以設置每頁顯示數據的大小,用DBQuery.shellBatchSize= 50;這樣每頁就顯示50條記錄了。
2、查詢去掉後的當前聚集集合中的某列的重復數據
db.userInfo.distinct("name");
會過濾掉name中的相同數據
相當於:select distict name from userInfo;
3、查詢age = 22的記錄
db.userInfo.find({"age": 22});
相當於: select * from userInfo where age = 22;
4、查詢age > 22的記錄
db.userInfo.find({age: {$gt: 22}});
相當於:select * from userInfo where age >22;
5、查詢age < 22的記錄
db.userInfo.find({age: {$lt: 22}});
相當於:select * from userInfo where age <22;
6、查詢age >= 25的記錄
db.userInfo.find({age: {$gte: 25}});
相當於:select * from userInfo where age >= 25;
7、查詢age <= 25的記錄
db.userInfo.find({age: {$lte: 25}});
8、查詢age >= 23 並且 age <= 26
db.userInfo.find({age: {$gte: 23, $lte: 26}});
9、查詢name中包含 mongo的數據
db.userInfo.find({name: /mongo/});
//相當於%%
select * from userInfo where name like 『%mongo%』;
㈣ 如何在命令行下操作MongoDB資料庫
1、Help查看命令提示
[html] view plain
> help
> db.help();
> db.yourColl.help();
> db.youColl.find().help();
> rs.help();
2、切換/創建資料庫
[html] view plain
> use yourDB;
當創建一個集合(table)的時候會自動創建當前資料庫
3、查詢所有資料庫
[html] view plain
> show dbs;
4、刪除當前使用資料庫
[html] view plain
> db.dropDatabase();
㈤ MongoDB怎樣批量執行命令
您好,這樣的:
沒有這種操作,因為MongoDB的底層就不支持這種操作。
從MongoDB的oplog模式中可以看出,MongoDB的每次op都是獨立執行的最小單元,因此,不會存在多個op組合成一個執行的情況。因此在各種API中都不會存在這種批量插入的操作。
在用 MongoDB Shell 的腳本模式,需要注意的是這跟在Shell里直接輸入命令有一些小區別,比如 show dbs 是不能用的,因為它不是合法的 Javascript 語言。再比如查詢返回的是Cursor,而不是直接顯示前20個文檔。錯誤提示會有的,比如說語法錯誤。
㈥ 關於MongoDB的查詢命令
db.[YourCollectionName].find();
㈦ mongodb怎樣查詢正在使用的命令
1:log一定要指定一個xxx.log文件(文件不存在也要這么寫,會自動創建,寫成這樣是不可以的--logpath d:\mongodb\logs)
2:serviceName的N字母要大寫
注意:這條命令要到MongoDB的bin目錄下運行,剛開始的時候,我就直接在D:\下運行,結果服務的可執行目錄為【"D:\mongod" --logpath "D:\MongoDB\logs\MongoDB.log" --logappend --dbpath "D:\MongoDB\data" --directoryperdb --service 】,肯定是不對的。
該命令行指定了日誌文件:E:\APMServ5.2.6\MongoDb\logs\MongoDB.log,日誌是以追加的方式輸出的;
數據文件目錄:E:\APMServ5.2.6\MongoDb\data,並且參數--directoryperdb說明每個DB都會新建一個目錄;
Windows服務的名稱:MongoDB;
以上的三個參數都是可以根據自己的情況而定的,呵呵。
最後是安裝參數:--install,與之相對的是--remove
啟動MongoDB:net start MongoDB
停止MongoDB:net stop MongoDB
刪除MongoDB:sc delete MongoDB
或
運行→regedit→注冊表編輯器→HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services 下面顯示的就是所安裝的服務項,刪除相應的就好
mongod --logpath E:\APMServ5.2.6\MongoDb\logs\MongoDB.log --logappend --dbpath E:\APMServ5.2.6\MongoDb\data --directoryperdb --serviceName MongoDB --install
㈧ 怎麼啟動mongodb shell
原始方式只有啟動了MongoDB的服務,才能使用MongoDB的功能,通常情況下會開一個命令窗口,輸入下面的命令來啟動服務:配置文件方式
如果不想每次啟動的時候都在命令行中輸入很多繁瑣的參數,可以把參數信息保存在配置文件中。創建一個名為mongodb.cnf的配置文件,和那些小工具放在同一個目錄中,文件的內容如下:
dbpath="d:\database\mongodb\data"
然後在命令窗口輸入下面命令就可以啟動服務
看似和上面的方法差不多,還是需要指定配置文件,但如果參數不止-dbpath的時候,就可以將參數都寫在配置文件中,在命令行調用的時候就會顯得方便很多。
Daemon方式
上面介紹的兩種方式啟動服務都需要打開一個命令行窗口,窗口關閉了服務也就停止了。我們使用--fork參數可以將mongodb的服務放在後台運行,這樣相對比較安全。--fork參數是和--logpath參數一起使用的。
㈨ mongodb資料庫同步重啟命令
請給出MongoDB版本,配置(是否shard)以及同步重啟指的是什麼?
㈩ mongodb shell命令在哪
打開cmd切換到mongodb安裝目錄的bin目錄下,輸入mongo.exe登錄mongodb資料庫,然後就可以使用命令行了。