在从本地将数据通过idea导入到虚拟机Mongol数据库中时!!!
def main(args: Array[String]): Unit = {
val config = Map(
"spark.cores" -> "local[*]",
"mongo.uri" -> "mongodb://niit001:27017/recommender",
"mongo.db" -> "recommender"
)
System.setProperty("hadoop.home.dir", "D:\\Hadoop")
......
}
居然出错了!!!很难过,很悲伤!
不用不用着急,我这个测试了一下午的方法必定有用嘿嘿!
我们先来mongo中看看!
记得测试之前要启动哟!这里另附了关闭服务的程序哟!
在我们结束测试项目关闭虚拟机前,记得关闭服务哟!
启动: sudo /training/mongodb/bin/mongod -config /training/mongodb/data/mongodb.conf
打开: /training/mongodb/bin/mongo
关闭: sudo /training/mongodb/bin/mongod -shutdown -config /training/mongodb/data/mongodb.conf
进去了进去了,不过查看数据库的命令!怎么出也错了!
而且我们会发现,它居然跟上面的错误很像!!!
别急别急,验证用户登录就可以了!
> use admin
switched to db admin
> db
admin
> db.createUser(
... {
... user:"myadmin",
... pwd:"secret",
... roles:[{role:"root",db:"admin"}]
... }
... )db.createUser(
... {
... user:"myadmin",
... pwd:"secret",
... roles:[{role:"root",db:"admin"}]
... }
... )
2021-12-10T10:16:17.102-0500 E QUERY [thread1] SyntaxError: missing ; before statement @(shell):7:3
> db.auth('myadmin','secret')
1
> show dbs
admin 0.000GB
local 0.000GB
这里解决了,那idea还是不行哇,数据还是没法导入呀!
别急别急,看这里!
我们改了这里哟!
def main(args: Array[String]): Unit = {
val config = Map(
"spark.cores" -> "local[*]",
"mongo.uri" -> "mongodb://myadmin:secret@niit001:27017/database?authSource=admin",
"mongo.db" -> "database"
)
System.setProperty("hadoop.home.dir", "D:\\Hadoop")
......
}
然后就可以了!
成功了成功了!
我们去Mongo中看看数据有没有哈哈!
看!这里!
> show dbs
admin 0.000GB
database 0.002GB
local 0.000GB
> use database
switched to db database
> db
database
> show tables
AverageProducts
Product
RateMoreProducts
RateMoreRecentlyProducts
Rating
> db.Rating.find()
{ "_id" : ObjectId("61b376fa5273ee211c032175"), "userId" : 4867, "productId" : 457976, "score" : 5, "timestamp" : 1395676800 }
{ "_id" : ObjectId("61b376fa5273ee211c032176"), "userId" : 42103, "productId" : 457976, "score" : 4, "timestamp" : 1215878400 }
{ "_id" : ObjectId("61b376fa5273ee211c032177"), "userId" : 71063, "productId" : 457976, "score" : 3, "timestamp" : 1263744000 }
{ "_id" : ObjectId("61b376fa5273ee211c032178"), "userId" : 43949, "productId" : 457976, "score" : 4, "timestamp" : 1378396800 }
{ "_id" : ObjectId("61b376fa5273ee211c032179"), "userId" : 407423, "productId" : 457976, "score" : 5, "timestamp" : 1379001600 }
{ "_id" : ObjectId("61b376fa5273ee211c03217a"), "userId" : 787, "productId" : 457976, "score" : 5, "timestamp" : 1350057600 }
{ "_id" : ObjectId("61b376fa5273ee211c03217b"), "userId" : 33007, "productId" : 457976, "score" : 4, "timestamp" : 1229616000 }
{ "_id" : ObjectId("61b376fa5273ee211c03217c"), "userId" : 100016, "productId" : 457976, "score" : 5, "timestamp" : 1368892800 }
{ "_id" : ObjectId("61b376fa5273ee211c03217d"), "userId" : 5420, "productId" : 457976, "score" : 5, "timestamp" : 1316188800 }
{ "_id" : ObjectId("61b376fa5273ee211c03217e"), "userId" : 5387, "productId" : 457976, "score" : 5, "timestamp" : 1366300800 }
{ "_id" : ObjectId("61b376fa5273ee211c03217f"), "userId" : 5675, "productId" : 457976, "score" : 3, "timestamp" : 1331481600 }
{ "_id" : ObjectId("61b376fa5273ee211c032180"), "userId" : 96539, "productId" : 457976, "score" : 5, "timestamp" : 1359302400 }
{ "_id" : ObjectId("61b376fa5273ee211c032181"), "userId" : 135, "productId" : 457976, "score" : 5, "timestamp" : 1389369600 }
{ "_id" : ObjectId("61b376fa5273ee211c032182"), "userId" : 1043, "productId" : 457976, "score" : 5, "timestamp" : 1335974400 }
{ "_id" : ObjectId("61b376fa5273ee211c032183"), "userId" : 4915, "productId" : 457976, "score" : 5, "timestamp" : 1316620800 }
{ "_id" : ObjectId("61b376fa5273ee211c032184"), "userId" : 4709, "productId" : 457976, "score" : 5, "timestamp" : 1392134400 }
{ "_id" : ObjectId("61b376fa5273ee211c032185"), "userId" : 773025, "productId" : 457976, "score" : 4, "timestamp" : 1264089600 }
{ "_id" : ObjectId("61b376fa5273ee211c032186"), "userId" : 287246, "productId" : 457976, "score" : 4, "timestamp" : 1351267200 }
{ "_id" : ObjectId("61b376fa5273ee211c032187"), "userId" : 206535, "productId" : 457976, "score" : 5, "timestamp" : 1381766400 }
{ "_id" : ObjectId("61b376fa5273ee211c032188"), "userId" : 826302, "productId" : 457976, "score" : 5, "timestamp" : 1398096000 }
Type "it" for more
有了有了,有数据库了!
数据库里边也有表了!
数据也导入表中了!就是这样嘿嘿,解决了!