使用python远程连接数据库
根据web连接服务的原理,我们可以通过一台电脑连接我们另一台电脑上的数据库
一、开启数据库的权限
1.Mysql:
1)修改访问权限
首先修改可以访问的ip,把‘localhost’全部修改为‘%’,打开cmd,使用指令【mysql -u root -p】,进入数据库,其中root是MySQL的用户名,默认为root

2)选择数据库
3)修改ip访问的权限
使用sql语句【update user set host="%" where host="localhost";】完成对权限的更新,在使用指令【select user,host from user;】进行查看
4)重启服务
进入服务找到MySQL的服务重启一下就可以了
2.neo4j:
1)打开访问权限
进入neo4j的安装目录下的配置文件conf中
通过快速检索crtl+F找到这个配置,取消这一行的注释即可
2)开放7474端口
【控制面板】-->【windows defender 防火墙】-->【高级设置】-->【入站规则】-->【新建规则】


依次选择:【端口】-->输入特定端口-->【允许连接】-->【下一步】-->输入名称和描述-->【完成】,完成端口的设置

3)重启服务,按照前面的方法重启一下服务即可
二、远程连接数据库
1.MySQL:
python3中使用pymysql连接MySQL数据库,安装pymysql,【pip install pymysql】
通过下面的代码以及数据库和连接的电脑在同一个局域网下面就可以连接成功。
import pymysql class Mysql:
def __init__(self):
self.content = pymysql.Connect(
host='0.0.0.0', # mysql的主机ip
port=3306, # 端口
user='root', # 用户名
passwd='*******', # 数据库密码
db='student', # 数据库名
charset='utf8', # 字符集
)
self.cursor = self.content.cursor() def query(self):
sql = "select name,url from films;"
self.cursor.execute(sql)
for row in self.cursor.fetchall():
print("name:%s\t url:%s" % row)
print(f"一共查找到:{self.cursor.rowcount}") def end(self):
self.cursor.close()
self.content.close() if __name__ == '__main__':
mysql = Mysql()
mysql.query()
mysql.end()
2.neo4j
http://ip:7474/browser/ # ip是数据库的地址
通过这样就可以连接到远程数据库,并且操作数据库信息
三、拓展
python连接mongodb数据库
from pymongo import MongoClient class Mongo:
def __init__(self):
self.con = MongoClient('127.0.0.1', 27017) # link database
self.db = self.con.test # choose database
self.collection = self.db.test # choose collection def insert(self):
student_0 = {
'id': '',
'name': 'Jordan',
'age': '',
'sex': 'male',
}
result_0 = self.collection.insert_one(student_0)
print(result_0)
student_1 = {
'id': '',
'name': 'Jerry',
'age': '',
'sex': 'female',
}
student_2 = {
'id': '',
'name': 'Cherry',
'age': '',
'sex': 'female',
}
student_3 = {
'id': '',
'name': 'Pet',
'age': '',
'sex': 'female',
}
result_1 = self.collection.insert_many([student_1, student_2, student_3])
print(result_1)
print(result_1.inserted_ids) def query(self):
result_0 = self.collection.find_one({"id": ""})
print(result_0)
result_1 = self.collection.find({"sex": "female"})
print(result_1)
for one in result_1:
print(one) if __name__ == '__main__':
mongo = Mongo()
mongo.query()
四、总结
python提供了数据库的基本驱动可以通过调用相应的驱动完成数据库信息的存储。同时通过更改数据库的信息就可以使得数据库能够进行远程的访问。可以通过查阅相应的信息完成数据库的连接和操作。
使用python远程连接数据库的更多相关文章
- robotframework 远程连接数据库问题
今天在使用RF远程连接数据库时出现报错的问题,因为我发现只安装databaselibrary跟PyMsql的话,连接本地的数据库是OK的,但是如果我们的测试机性能有限,那么既要编写代码.运行测试.还有 ...
- python + pymysql连接数据库报“(2003, "Can't connect to MySQL server on 'XXX数据库地址' (timed out)")”
python + pymysql连接数据库报"(2003, "Can't connect to MySQL server on 'XXX数据库地址' (timed out)&quo ...
- 【基于WinForm+Access局域网共享数据库的项目总结】之篇三:Access远程连接数据库和窗体打包部署
篇一:WinForm开发总体概述与技术实现 篇二:WinForm开发扇形图统计和Excel数据导出 篇三:Access远程连接数据库和窗体打包部署 [小记]:最近基于WinForm+Access数据库 ...
- Oracle数据库的创建以及远程连接(PL/SQL Developer远程连接数据库)
dbca: 创建数据库 netca: 创建监听程序 netmgr: 配置监听服务(将数据库服务注册到监听器上) netca 与 netmgr 两步可以直接在 ORACLE_HOME/network/a ...
- 在ubunut下使用pycharm和eclipse进行python远程调试
我比较喜欢Pycharm,因为这个是JetBrains公司出的python IDE工具,该公司下的java IDE工具--IDEA,无论从界面还是操作上都甩eclipse几条街,但项目组里有些人使用e ...
- SQL Server 2005如何远程连接数据库?
SQL Server 2005如何远程连接数据库? 方法/步骤 1 在配置工具中的服务和远程连接的外围应用配置器 --->远程连接-->本地连接和远程连接-->同时使用TCP/I ...
- Python远程视频监控
Python远程视频监控程序 老板由于事务繁忙无法经常亲临教研室,于是让我搞个监控系统,让他在办公室就能看到教研室来了多少人.o(>﹏<)o||| 最初我的想法是直接去网上下个软件,可 ...
- Pycharm中进行Python远程开发
http://blog.csdn.net/pipisorry/article/details/52269952 PyCharm提供两种远程调试(Remote Debugging)的方式: 配置远 ...
- python 远程调度进程服务与客户端
python 远程调度进程服务与客户端 核心思想: 在本地或远程机器上创建一个进程,提供调度服务.使用了 APScheduler. 安装:APScheduler $ wget https://pypi ...
随机推荐
- Android 中指纹识别
Android从6.0系统开始就支持指纹认证功能了,指纹功能还需要有硬件支持才行 指纹与手机系统设置的指纹进行匹配 如图: 在LoginActivity 中弹出指纹验证Fragment,验证成功进入M ...
- LeetCode学习_day1:原地算法
原地算法:是一种使用小的,固定数量的额外之空间来转换资料的算法.当算法执行时,输入的资料通常会被要输出的部份覆盖掉. 范例:冒泡排序.选择排序.插入排序.希尔排序 (1)冒泡排序: 冒泡排序算法的原理 ...
- 【已采纳】supervisor在服务器端(linux),如何一直运行你的python代码
正式开始之前,说一下我的项目是放在虚拟环境里的,具体什么是虚拟环境,怎么创建,请自行百度噢! 一.安装 源码安装 先下载最新的supervisor安装包:https://pypi.python.o ...
- elasticsearch 集群、节点、索引、分片、副本概念
原文链接: https://www.jianshu.com/p/297e13045605 集群(cluster): 由一个或多个节点组成, 并通过集群名称与其他集群进行区分 节点(node): 单个 ...
- [TCP/IP] SSL的通讯原理
SSL:位于传输层和应用层之间,专门实现在传输之前加密,在接收端给应用层之前解密;使用非对称加密技术 SSL原理 1.客户端与服务端建立连接 2.互相Hello(包含支持的版本.算法:加上随机数) 3 ...
- 001-Zabbix 服务安装
Zabbix 服务安装 [官方地址]点我快速打开文章 1.安装 Zabbix 1.1 下载 Zabbix 清华源 rpm -ivh https://mirrors.tuna.tsinghua.edu. ...
- 通过Request对象获取请求的IP地址
/** * 标识要从哪些消息头中获取IP地址 */ private static final String[] getIpArray = {"HTTP_X_FORWARDED_FOR&quo ...
- socket服务
1.socket_server import socket import threading server = socket.socket(socket.AF_INET, socket.SOCK_ST ...
- 莫烦TensorFlow_08 tensorboard可视化进阶
import tensorflow as tf import numpy as np import matplotlib.pyplot as plt # # add layer # def add_l ...
- 论文阅读笔记六十五:Enhanced Deep Residual Networks for Single Image Super-Resolution(CVPR2017)
论文原址:https://arxiv.org/abs/1707.02921 代码: https://github.com/LimBee/NTIRE2017 摘要 以DNN进行超分辨的研究比较流行,其中 ...