Java自学者论坛

 找回密码
 立即注册

手机号码,快捷登录

恭喜Java自学者论坛(https://www.javazxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,会员资料板块,购买链接:点击进入购买VIP会员

JAVA高级面试进阶训练营视频教程

Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程Go语言视频零基础入门到精通Java架构师3期(课件+源码)
Java开发全终端实战租房项目视频教程SpringBoot2.X入门到高级使用教程大数据培训第六期全套视频教程深度学习(CNN RNN GAN)算法原理Java亿级流量电商系统视频教程
互联网架构师视频教程年薪50万Spark2.0从入门到精通年薪50万!人工智能学习路线教程年薪50万大数据入门到精通学习路线年薪50万机器学习入门到精通教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程MySQL入门到精通教程
查看: 319|回复: 0

解决django项目无法连接远程mysql的问题

[复制链接]
  • TA的每日心情
    奋斗
    2024-4-6 11:05
  • 签到天数: 748 天

    [LV.9]以坛为家II

    2034

    主题

    2092

    帖子

    70万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    705612
    发表于 2021-5-8 07:52:22 | 显示全部楼层 |阅读模式

    我们都知道django项目可以通过修改settings.py文件中的DATABASES这个对象,使用不同的数据库。

    如图所示,我们想连接远程的mysql,修改settings.py的配置

    然后我们在终端启动项目python manage.py runserver

    不料发生报错,这个错很明显就是无法连接远程的mysql

    下面我们就开始来解决这个问题

    首先,我们通过xshell登陆远程的服务器

    然后进入 /etc/mysql/my.cnf 

    然后修改my.cnf 这个文件的内容,保存退出

     重启一下mysql

    然后回到我们的django项目中,重新启动一下项目,发现还是报之前那个错误,别急,我们还有一个东西没有设置。

    授权任意主机登陆
    我们现在回到服务器上面,登陆mysql
    终端命令为mysql -u root -p123456,-p后面紧跟着是你的密码,不能有空格
    grant all privileges on *.* to 'root'@'%' identified by 'password' with grant option;
    我们只需改一个地方
    password: mysql 密码
    授权成功后,我们还需要刷新权限信息flush privileges;
    现在搞了这么多我们又回到django,重新运行django项目,python manage.py runserver 发现还是报原来那个错,后来想了想,
    因为我用的是阿里云服务器,其中阿里云服务器有一个叫做安全组的东西。
    我们可以看到红色框框的那句话: 安全组未设置任何自定义放行规则,会导致无法访问实例端口,若需访问请添加安全组规则放行对应的端口。
    因为我们mysql用的是3306这个端口,并没有在安全组找到,所以我们先配一个。
    好,到现在我们可以大胆地运行我们的django项目了
     并没有报错,成功地运行了,真happy。。。
    我们来验证一下是不是真的连上了远程服务器
    我们先查询一下我们django项目的表有没有数据
     
    然后我们通过python manage.py shell,手动添加一个,然后在远程服务器查询是否有添加成功,
    如果添加成功,说明我们本地的django项目已经连上了远程的服务器。
     
    我们已经成功添加一条数据到TestModel中,现在我们在服务器上查询是否有这条数据。
     
    很明显我们刚才添加的数据已经存在了,说明大功告成,我们本地的django项目已经连上了远程的服务器。
    哎...今天够累的,签到来了1...
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|小黑屋|Java自学者论坛 ( 声明:本站文章及资料整理自互联网,用于Java自学者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-5-16 06:02 , Processed in 0.070814 second(s), 29 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表