最近用了下mongodb ,简单做个记录:
1.启动系统mongo服务
bash
mongod -f mongod.conf
其中 mongod.conf 是配置文件,示例如下:
dbpath=/youpath/data/db #数据库保存位置
logpath=/youpath/data/mongod.log #日志
logappend=true
fork=true #后台
2. 如何使用 python 创建一个名为 'mydatabase' 的数据库,并在该数据库里面建一个子库 "mycollection":
实际上用mongo命令创建数据库和子库也比较简单:
use mydatabase
db.createCollection("mycollection")
show dbs
使用Python创建如下, 示例 python test.py
python
from pymongo import MongoClient
# 连接到MongoDB数据库
client = MongoClient('mongodb://localhost:27017/')
# 创建一个新的数据库
db = client['mydatabase']
# 创建一个新的集合
collection = db['mycollection']
# 插入数据
data = {
'name': 'John',
'age': 30,
'city': 'New York'
}
result = collection.insert_one(data)
# 打印插入的数据的ID
print('Inserted data ID:', result.inserted_id)
运行完上述可以看到数据库已经存在了,使用 db.mycollection.find()
也可以查看到我们插入的内容。
3. 如何使用Python插入数据到上面创建好的数据库中
示例: python insert.py
python
from pymongo import MongoClient
# 要保存的数据
data = [
{
'name': 'John',
'age': 30,
'city': 'New York'
},
{
'name': 'Jane',
'age': 25,
'city': 'Los Angeles'
}
]
# 连接到MongoDB数据库
client = MongoClient('mongodb://localhost:27017/')
# 选择数据库
db = client['mydatabase']
# 选择集合
collection = db['mycollection']
# 插入数据
result = collection.insert_many(data) #插入多条使用insert_many , 如果只有一条使用insert_one
# 打印插入的数据的ID列表
print('Inserted data IDs:', result.inserted_ids)
可以运行Python代码可以看到结果已经插入到数据库中了
4.删除创建的mongo数据库
连接到MongoDB实例。在命令行中使用mongo命令连接到MongoDB实例。
选择要删除的数据库。使用以下命令选择要删除的数据库:
use mydatabase
请将"mydatabase"替换为实际的数据库名称。
删除数据库。使用以下命令删除数据库:
db.dropDatabase()
运行此命令后,MongoDB将删除指定的数据库及其所有集合和数据。请注意,此操作是不可逆的,删除的数据无法恢复,所以请在执行此操作之前务必备份重要的数据。
确认数据库已成功删除。您可以使用以下命令列出所有的数据库,确认目标数据库已被删除:
show dbs
如果目标数据库不再显示在列表中,表示数据库已成功删除。
5.创建管理员账号并设置用户密码
要给MongoDB数据库设置账号密码,您可以按照以下步骤进行操作:
启动MongoDB实例时,使用--auth选项启用身份验证。例如,使用以下命令启动MongoDB实例:
BASH
mongod --auth
- 连接到MongoDB实例。在命令行中使用mongo命令连接到MongoDB实例:
BASH
mongo
-
进入管理员数据库(admin)。使用以下命令切换到管理员数据库:
use admin
-
创建一个管理员账号。使用以下命令创建一个管理员账号:
db.createUser(
{
user: "admin",
pwd: "admin_password",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
你也将"admin"替换为您想要设置的管理员账号名称,"admin_password"替换为您想要设置的管理员密码。
先记录到这吧,,