1、进入mysql,创建一个新用户test:
格式:grant 权限 on 数据库名表名 用户@登录主机 identified by "用户密码";
grant all privileges on to test@19216802 identified by "123456";
或者
grant select,update,insert,delete on to test@19216802 identified by "123456";
2、 /mysqladmin -uroot -ppwd reload
记住:对授权表的任何修改都需要重新reload
这时我们应该可以从19216802来远程管理19216801的数据库了
下面就是该脚本radiuspy,其中出现三个日期:10天以后的日期future、今天的日期now、用户到期时间userdate,如果userdate <= future 并且 userdate >= now,那么向radreply表中插入一行,向用户提示到期时间,及时缴费;如果userdate < now,那么将该用户的状态设为停机,不允许其再登陆。
#! /usr/local/python/bin/python
# -- coding: UTF-8 --
#引入模块
import MySQLdb
import datetime
#格式化日期,只有相同格式的日期才能进行比较
future = (datetimedatetoday() + datetimetimedelta(10))strftime("%Y-%m-%d")
now = (datetimedatetoday())strftime("%Y-%m-%d")
#这里就是连接远端数据库了
conn = MySQLdbconnect (host = "19216801",
user = "test",
passwd = "123456",
db = "radius")
cursor = conncursor ()
cursorexecute ("SELECT login_name,id,last_date FROM customer where last_date!='' and type='包月' and status='开通'")
安装完成后,加上我之前有一片的温湿度监测的代码:
(mysql数据库在树莓派上;
用户名密码:root,123456;
端口:3306;
地址:localhost或者127001;
数据库:testdb;
表:temp;
列名:time,temperature,humidity)
创建数据库和表的代码没写进去,可以在外面创建或者写在里面。个人建议是写在外面。
conn本来 就已经被你定义成了 函数, connping()当然不存在了。而且你要的数据库连接c,还被手动关闭了。我觉得有两点
1 按照你这个脚本的情况,你用一次,就新建一个数据库连接问题应该不大。
2 要保持使用一个连接的话。把c作全局变量 c=MySQLdbconnect(user="root",passwd="12345",host="localhost",db="yingtest")
使用的时候,直接用c但是不要close,当然要先判断这个连接是否已经断开了,如是再重新连一次。
或者把连接放到一个连接池里面,用的时候直接去连接池里面取。连接池可以看看 DBUtils模块
你说的connping() 看看是不是在c里面,c=MySQLdbconnect(user="root",passwd="12345",host="localhost",db="yingtest")就是这个对象里面,看看有没有判断连接是否断开的方法。 因为没用过 MySQLdb模块。
购买 RDS的购买非常简单,在阿里云网站RDS专区选择一款适合你的就够了。 有内存、存储空间、最大连接数三个参考数据,大家买之前可以看一下自己大概的需求,比如我要迁移的网站,每天访问量大概30W的PV左右,最近一年左右的MYSQL最大连接数是113,数据库总大小只有18G,于是果断的选择了RDS的MYSQL新二型。 存储空间够用就行,最大连接数需要小小的注意一下,如果最大连接数不够用,可能会造成“too many connections”的错误,大家可以稍微参考一下我上面给出来的数据。如果是新站,可以先购买最小的型号,如果不够,日后可以随时升级,很方便。 目前阿里云RDS提供的mysql是55版本的。
设置RDS
购买到适合自己的套餐,付款开通之后,登陆阿里云管理控制台,就能看到我们的RDS实例了。 我们购买的是一个RDS实例,在这个实例里面,你可以创建很多个MYSQL数据库,同时也能创建很多个数据库账号,像我购买的新2型就支持最多50个数据库账号和200个数据库,这对于我来说就已经足够了,这些数据库共享上面购买的内存、存储空间和最大连接数。
创建数据库和用户 :
在控制台的“数据库管理”中选择新建数据库,就会打开如下图的数据库新建页面,数据库名称看你的需要了,随意填入几个简单的字符都可以,字符集这里根据你的程序需要了,RDS支持utf8、GBK、Latin1,我要迁移的论坛是GBK编码,就选了gbk,数据库用户名和密码根据自己的需要填写就可以了,密码可以设置稍微复杂一点,账号类型选择“读写”。如下图所示。
切换连接模式 如果你是在阿里云服务器上连接rds使用,就选择内网模式,如果是在其他服务器上连接RDS使用,就选择外网模式,在控制台的右上角有切换方式。
设置IP白名单 RDS可以设置允许访问的IP,这一点对安全非常有用。直接在这里填入你要连接RDS的服务器的IP即可,如果是外网模式,请填入外网IP,如果是内网模式,填入内网IP即可。当然,图方便的,也可以填入%,表示允许所有IP连接,非常不建议这么做。 设置好了如上这些,我们就可以开始使用RDS了。
迁移数据 阿里云官方提供了一套数据迁移工具,查看,不过个人感觉那套工具有很多的使用门槛,如果数据库不是特别庞大,就不需要使用了。我迁移数据的时候使用的是Navicat for Mysql,这个工具使用简单,方便,适合小白。 我的数据库只有18G,所以就使用了很简单的方法来 *** 作了。先在源服务器上安装Navicat,然后在Navicat上建立到现有数据库的连接和到RDS的连接,在上面步骤中设置IP白名单时,记得把你现在安装Navicat的这机器的IP加入到白名单里面。 然后我们在现有的数据库上右键,选择“数据传输”。 在d出的数据传输界面中,源数据库选择我们现在使用的数据库,把数据库对象中的“表”全部选中,如果有使用视图等东西,就一并选上,目标数据库选择你在RDS上建立的数据库,这样简单的设置之后,直接点击开始就在传输数据了,接下来只要泡杯咖啡慢慢等着就行。
1、进入mysql,创建一个新用户test:
格式:grant 权限 on 数据库名表名 用户@登录主机 identified by "用户密码";
grant all privileges on to test@19216802 identified by "123456";
或者
grant select,update,insert,delete on to test@19216802 identified by "123456";
2、 /mysqladmin -uroot -ppwd reload
记住:对授权表的任何修改都需要重新reload
这时我们应该可以从19216802来远程管理19216801的数据库了
下面就是该脚本radiuspy,其中出现三个日期:10天以后的日期future、今天的日期now、用户到期时间userdate,如果userdate <= future 并且 userdate >= now,那么向radreply表中插入一行,向用户提示到期时间,及时缴费;如果userdate < now,那么将该用户的状态设为停机,不允许其再登陆。
#! /usr/local/python/bin/python
# -- coding: UTF-8 --
#引入模块
import MySQLdb
import datetime
#格式化日期,只有相同格式的日期才能进行比较
future = (datetimedatetoday() + datetimetimedelta(10))strftime("%Y-%m-%d")
now = (datetimedatetoday())strftime("%Y-%m-%d")
#这里就是连接远端数据库了
conn = MySQLdbconnect (host = "19216801",
user = "test",
passwd = "123456",
db = "radius")
cursor = conncursor ()
cursorexecute ("SELECT login_name,id,last_date FROM customer where last_date!='' and type='包月' and status='开通'")
以上就是关于python 如何远程连接内网的mysql数据库全部的内容,包括:python 如何远程连接内网的mysql数据库、树莓派下python连接mysql、用python编写与mysql数据库连接并实现断线重连的问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)