Python远程连接数据库(MongoDB Redis Mysql )

准备工作

一、python需要在本机安装,这里是python官网地址 https://www.python.org/
二、安装各个数据库驱动
不管是远程连接哪个数据库,都要在本机安装驱动程序

在CMD命令行里分别输入下列代码安装驱动程序

pip install pymongo
pip install redis
pip install MySQLdb

远程连接MongDB

一、首先打开mongodb的配置文件,找到bindIp: 127.0.0.0这一行,改为bindIp: 0.0.0.0,然后重载配置。
这一步的目的是让mongodb可以被其他ip的计算机访问
127.0.0.0代表本机,0.0.0.0代表任何IP的地址,后面远程连接redis和mysql也是同样的道理,都需要将默认的127.0.0.0改为0.0.0.0,否则无法访问
二、 编写脚本访问数据库

import pymongo
# 连接数据库:
client = pymongo.MongoClient(host='#这里填写服务器IP地址', port=27017)
# 指定数据库:
# 方法一:
db = client.test1
# 制定集合:
collection = db["students1"]
student = {
 "id": "10180101",
 "name": "jorden",
 "age": 20,
 "gender": "male"
}
result = collection.insert_one(student)
print(result)
for i in collection.find():
 print(i)

执行结果如下

Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.19
Type "help", "copyright", "credits" or "license()" for more informatio
>>> 
==================== RESTART: D:\python\数据库连接-MongoDB.py =========
<pymongo.results.InsertOneResult object at 0x000001F8726BAA88>
{'_id': ObjectId('5de32fdd5cd1850a9bdd5e90'), 'id': '10180101', 'name'
{'_id': ObjectId('5de32ff81546b4c39616b718'), 'id': '10180101', 'name'
{'_id': ObjectId('5df210aac5579cd4bab69815'), 'id': '10180101', 'name'

远程连接Redis

修改配置文件
bind 0.0.0.0
protected-mode no
编写程序如下:

import redis
r=redis.Redis(host='#这里填写服务器IP地址',port=6379,db=1,password='123456' )
r.set('name','jin')
print(r.get('name'))

执行结果如下

Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.19
Type "help", "copyright", "credits" or "license()" for more informatio
>>> 
===================== RESTART: D:\python\数据库连接-Redis.py ==========
b'jin'
>>>

远程连接mysql

修改配置
首先给root用户赋予远程连接的权限,登陆mysql服务器

mysql -uroot -p

修改root访问权限 %代表任何ip地址都可以访问,修改后刷新并重启
服务器使用的是linux 分别键入下列命令

use mysql;
grant all privileges on *.* to root@'%' identified by "password";
flush privileges;
service mysql restart

编写程序如下

# encoding: utf-8
# 导入MySQL驱动:
import MySQLdb
conn = MySQLdb.connect(
      host='#这里填写服务器IP地址',# host
      port = 3306, # 默认端口
      user='root',# 用户名
      passwd='123456', # 密码
      db ='Test', # 数据库名称

      )
cursor = conn.cursor()
#查询
cursor.execute('select * from student')
values = cursor.fetchall()
for x in values:
  print(x)
#新建表
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")
sql = """CREATE TABLE EMPLOYEE (
         FIRST_NAME  CHAR(20) NOT NULL,
         LAST_NAME  CHAR(20),
         AGE INT,  
         SEX CHAR(1),
         INCOME FLOAT )"""

cursor.execute(sql)

# 关闭Cursor和Connection:
cursor.close()
conn.close()
#insert into student(id,name)values(1,'zhangsan');

执行结果如下

Python 3.7.4 (tags/v3.7.4:e09359112e, Jul  8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>> 
===================== RESTART: D:\python\数据库连接-Mysql.py =====================
(1, 'zhangsan')
>>> 

你可能感兴趣的:(数据库,mysql,redis,mongodb)