我们都知道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项目已经连上了远程的服务器。

解决django项目无法连接远程mysql的问题的更多相关文章

  1. 连接远程MySQL数据库项目启动时,不报错但是卡住不继续启动的,

    连接远程MySQL数据库项目启动时,不报错但是卡住不继续启动的, 2018-03-12 17:08:52.532DEBUG[localhost-startStop-1]o.s.beans.factor ...

  2. Windows环境下,本地Oracle创建dblink连接远程mysql

    前言 我的情况是,本地安装了oracle(安装完成后带有SQL Developer,不需要再安装instantclient),创建dblink去连接远程的mysql.有些朋友可能是 本地使用PL\SQ ...

  3. 3-Windows-CMD启动mysql服务-连接本地mysql服务-连接远程mysql服务

    转自: https://jingyan.baidu.com/article/84b4f565b77a5660f6da32d4.html 备注: 如果在连接远程mysql服务,无法连接时,可能是远程my ...

  4. phpmyadmin连接远程mysql

    phpmaadmin连接远程mysql连接远程mysql步骤.保证已经有�phpmyadmin,如果没有,去http://www.phpmyadmin.net/home_page/downloads. ...

  5. Django之连接远程mysql数据库

    1.创建Django项目(test) 进入配置文件settings.py 192.168.83.129:所需要远程连接数据库的ip地址 2.进入到远程连接的主机,修改/etc/mysql/mysql. ...

  6. PyCharm创建Django项目并连接mysql数据库

    0. 安装Django pip install django 1. 新建项目 注:我的Pycharm为社区版,创建项目时,File->New Project- 显示为: ​ 注意勾选内容. 如果 ...

  7. 解决django项目在ubuntu系统上无法安装mysqlclient

    首先我的项目是django2.0,python环境是3.5. 我们在本地开发完django项目了,在本地运行是成功的,然后我们把django项目放到服务器上,运行的时候就出错了. 如图: 我们都知道, ...

  8. 本地cmd连接远程mysql数据库

    一.登录远程mysql 输入mysql -h要远程的IP地址 -u设置的MySQL用户名 -p登录用户密码 例如:mysql -h 192.168.1.139 -u root -p dorlocald ...

  9. navicat 连接远程mysql

    01putty中session---远程地址(程序访问的域名) ,端口22--load加载进来 02SSH--Auth-Tunnels(隧道)-- putty端口映射SSH--Auth-Tunnels ...

随机推荐

  1. ID 学习二 FILE I/O

    TCP CONNECT 此文件io工具用于打开和另外一台电脑的tcp/ip连接 电脑(本地网络.ip地址或者完整主机名称) Inputs Server ID 想要连接的主机名称或者IP地址 TCP P ...

  2. Comet OJ - Contest #5 D 迫真小游戏 (堆+set)

    迫真小游戏 已经提交 已经通过 时间限制:2000ms 内存限制:256MB 73.98% 提交人数:196 通过人数:145 题目描述 H君喜欢在阳台晒太阳,闲暇之余他会玩一些塔防小游戏. H君玩的 ...

  3. 1118. Birds in Forest (25)

    Some scientists took pictures of thousands of birds in a forest. Assume that all the birds appear in ...

  4. c语言之ascii字符

    int main(){ char buf[20] = {104,101,108,108,111,0}; printf("buf:%s\n",buf); return 0;} 打印结 ...

  5. vue2.0 之 过渡动画transtion

    过渡的类名: 在进入/离开的过渡中,会有 6 个 class 切换 (v 是前缀,name = v) v-enter:定义进入过渡的开始状态.在元素被插入时生效,在下一个帧移除. v-enter-ac ...

  6. 字符串与List互转

    List转字符串,用逗号隔开 List<string> list = new List<string>(); list.Add("a"); list.Add ...

  7. LAMP架构编译安装过程详解

    linux Git 安装 1.安装git依赖包 . yum install -y perl-ExtUtils-MakeMaker package . yum install -y tcl build- ...

  8. DevExpress v19.1新版亮点——WinForms篇(一)

    行业领先的.NET界面控件DevExpress v19.1终于正式发布,本站将以连载的形式介绍各版本新增内容.在本系列文章中将为大家介绍DevExpress WinForms v19.1中新增的一些控 ...

  9. Python---Tkinter---贪吃蛇

    # 项目分析: - 构成: - 蛇  Snake - 食物 Food - 世界 World - 蛇和食物属于整个世界 class World: self.snake self.food ------- ...

  10. Intraweb IIS发布,数据连接问题

    日前,用IW做了小东西,开始用单独的执行程序发布,一切都没有什么问题,但是发布到正式环境中,用windows IIS发布,怎么也获取不了程序所在的物理路径,而后看了万一的博客,试了一下程序能正常运行, ...