之前生成选型python3,除了用的python3的pymysql模块之外其他的都是一样的。

1、首先搭建mysql(Mariadb)数据库(单点)
        安装方式分为yum安装,rpm包安装和源码安装,单点测试并且完全裸机建议yum直接安装或者。如果高可用(配合mycat)建议首选rpm包安装。其他的建议源码安装。
        1.1、yum安装(确定有正确的yum源 https://mirrors.tuna.tsinghua.edu.cn/)
                 yum  install  mariadb*
                 systemctl  enable mariadb
                 systemctl  start  mariadb
                 添加mysql的root密码
                                   use mysql set password=PASSWORD('password') where User='root';
                                   设置其他主机登录的权限:
                 mysql>GRANT   ALL   PRIVILEGES   ON   *.*   TO   'root'@'%'   WITH   GRANT   OPTION  //赋予任何主机访问数据的权限

mysql>FLUSH   PRIVILEGES  //修改生效

                
        1.2、rpm包安装(步骤转自我朋友王康宁的笔记https://www.kancloud.cn/ningjing_home/ceph/462330
                卸载系统自动安装的mariadb

          yum -y remove MariaDB*
            安装mysql的rpm包,需按照以下顺序进行安装。

            rpm -ivh mysql-community-common-5.7.17-1.el7.x86_64.rpm            rpm -ivh mysql-community-libs-5.7.17-1.el7.x86_64.rpm            rpm -ivh mysql-community-client-5.7.17-1.el7.x86_64.rpm            rpm -ivh mysql-community-server-5.7.17-1.el7.x86_64.rpm            rpm -ivh mysql-community-devel-5.7.17-1.el7.x86_64.rpm            rpm -ivh mysql-community-embedded-5.7.17-1.el7.x86_64.rpm            rpm -ivh mysql-community-libs-compat-5.7.17-1.el7.x86_64.rpm            rpm -ivh mysql-community-embedded-devel-5.7.17-1.el7.x86_64.rpm    
             初始化mysql数据库,获取登录密码

           mysqld --initialize --user=mysql
                       若提示目录下有文件,直接将/var/lib/mysql/ 文件夹下的文件删除干净再次执行。
                       

                       完成后 进入日志文件查找初始化生成的密码vi /var/log/mysqld.log
                       

启动mysql
           systemctl start mysqld

修改初始密码
                       登录mysql
                       mysql -u root -p
                       输入日志中的密码
                       第一次更改密码前所有的操作都是禁止的,依次执行:
           set password=password('123456');flush privileges; quit;
                       或者通过命令行
           mysqladmin -u root -p"5NUV1wX<;pj=" password 123456
                重启mysql:
           systemctl restart mysqld
                 查看配置文件:
           cat /etc/my.cnf

    1.3 源码安装

           wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
                           安装启动:
                           gunzip mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
                           mv mysql-5.7.17-linux-glibc2.5-x86_64.tar /usr/local/
                          .创建运行MySQL的用户和组(名字可以任意)
                           Shell> groupadd mysql
                           Shell> useradd mysql -g mysql

切换到mysql目录

Shell > mkdir data

修改解压包的权限

Shell> chown –R mysql .

Shell> chgrp –R mysql .

安装MySQL

Shell> bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data ##初始化数据目录

shell> cp -f support-files/my-default.cnf /etc/my.cnf ##将默认配置文件复制到指定目录

shell> bin/mysqld_safe --datadir=/usr/local/mysql/data --user=mysql & ##启动MySQL服务

shell> cp support-files/mysql.server /etc/init.d/mysql.server ##将MySQL加入到服务自启动

Shell> /etc/init.d/mysql.server start ##通过服务启动MySQL

MySQL配置文件my.ini中,在[mysqld]下添加skip-grant-tables,关闭mysql服务并重新开启;                                输入命令:mysql -u root -p
                            回车后,要求输入密码,直接回车跳过,则直接进入MySQL。
                            这样设置之后,可以直接双击D:\MySQL5.7.10\bin下的mysql.exe启动,而不用输入命令。
                            update mysql.user set password=PASSWORD('password') where User='root';

2、安装python的相关模块(注意顺序)

2.1、安装python-devel,mysql-devel(其中含有mysql_config模块)

2.2、在pypi.org下载MySQL-python-1.2.5.zip包。

2.3、源码安装MySQL-python,python setup.py install

[root@VirtualBox-web MySQL-python-1.2.5]# python  -c  "import  MySQLdb"

/usr/lib64/python2.7/site-packages/MySQL_python-1.2.5-py2.7-linux-x86_64.egg/_mysql.py:3: UserWarning: Module _mysql was already imported from /usr/lib64/python2.7/site-packages/MySQL_python-1.2.5-py2.7-linux-x86_64.egg/_mysql.pyc, but /root/MySQL-python-1.2.5 is                being added to sys.path

因为是源码安装会有两个MySQL_python-1.2.5-py2.7-linux-x86_64.egg,检查版本一致的话,手动将root下的MySQL_python-1.2.5-py2.7-linux-x86_64.egg删除。

3、修改项目的链接mysql。

DATABASES = {

                          'default': {
                             'ENGINE': 'django.db.backends.mysql',
                             'NAME': 'lagou',
                             'USER': 'root',
                             'PASSWORD': 'password',
                             'HOST': '127.0.0.1',
                             'PORT': '3306',
                            }
                           }

4、测试Django对mysql的连通性。

4.1、django.db.utils.OperationalError: (2003, "Can't connect to MySQL server on '192.168.56.104' (113)"),

Django链接不到外网,修改项目setting.py的 ALLOWED_HOSTS = []成ALLOWED_HOSTS = ['*',]

4.2、django.db.utils.OperationalError: (1130, "Host '192.168.56.105' is not allowed to connect to this MariaDB server")

mysql>GRANT   ALL   PRIVILEGES   ON   *.*   TO   'root'@'%'   WITH   GRANT   OPTION  //赋予任何主机访问数据的权限

mysql>FLUSH   PRIVILEGES  //修改生效

4.3、  python manage.py migrate,自动创建web系统使用的表

               
       4.4、通过Django创建指定表huiFangFirstTable和huiFangSecondTable。
                  
         4.5、查看创建的sql
                  
             4.6创建表成功
                
 

搭建Django链接MySQL流程(python2版)的更多相关文章

  1. Django 链接MySQL及数据操作

    Django 链接MySQL Django创建的项目自带的数据库是SQLite3,我们想要链接MySQL的话,需要更改settings.py中的配置 1.在MySQL中创建好数据库,Django项目不 ...

  2. Django链接MySQL,数据库迁移

    form表单默认是以get请求提交数据的 http://127.0.0.1:8000/login/?username=admin&password=123 action 1 不写,默认向当前地 ...

  3. Django—链接MySQL

    Djalgo基础配置方法 静态文件配置方法 1 所有的静态文件都放在 static 文件夹下,例如Bootstrap值类的第三方库,通常 static 文件下会创建 css image js 文件,用 ...

  4. Django链接Mysql 8.0 出现错误(1045:Access denied for user 'root'@'localhost' (using password: NO) 的一种解决方法

    运行环境: Django版本2.0 ; Mysql 版本 8.0.11; 错误代码:  django.db.utils.OperationalError: (1045:Access denied fo ...

  5. Django 链接mysql

    第一步:settings.py DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'testdjango ...

  6. Django链接mysql数据库报错1064

    D:\PycharmProjects\autotest>python manage.py makemigrations django.db.utils.ProgrammingError: (10 ...

  7. django——django链接mysql数据库

    1.创建项目 django-admin startproject django_mysql 2.创建App python manage.py startapp app1 3.Mysql数据库配置 (1 ...

  8. HttpResponse,render,redirect,静态文件配置,request对象方法,pycharm连接MySQL,django连接MySQL,django ORM

    HttpResponse 主要用于返回字符串类型的数据 def index(request): return HttpResponse('index页面') 在页面中就会显示 index页面 rend ...

  9. 第一篇:Win10系统搭建Python+Django+Nginx+MySQL 开发环境详解(完美版)

    Win10+Python+Django+Nginx+MySQL 开发环境搭建详解 PaulTsao 说明:本文由作者原创,仅供内部参考学习与交流,转载引用请注明出处,用于商业目的请联系作者本人. Wi ...

随机推荐

  1. java8_api_xml

    xml处理-1    解析xml的两种方式    DOM主要接口介绍    使用DOM解析XML        解析(parse)是指读入一个文件,确认其有正确的格式,然后将其分解成各种元素,使开发者 ...

  2. Excel 导入 Mysql

    1.将Excel xls文件 另存为 csv 文件: 2.用记事本打开csv文件,然后另存为编码为utf-8的txt文件: 3.将txt文件后缀更改为csv 4.最后,用phpmyadmin或其他数据 ...

  3. Dynamics 365—脚本

    Xrm.Page.getAttribute() 转控件:controls.get(0) 取赋值:getValue(),setValue() 是否改动:getIsDirty() 表单载入时的值:getI ...

  4. FtpHelper实现ftp服务器文件读写操作(C#)

    最近做了一个项目,需要读取ftp服务器上的文件,于是参考了网上提供的一些帮组方法,使用过程中,出现一些小细节问题,于是本人做了一些修改,拿来分享一下 using System; using Syste ...

  5. jupyter notebook快捷键使用指南

    Jupyter Notebook 是一个交互式笔记本程序, 其有丰富的快捷键来便捷的完成工作.Notebook 有两种键盘输入模式.即命令模式和编辑模式,这与 Vim 有些类似.在编辑模式下,可以往单 ...

  6. mysql doc

    https://www.cnblogs.com/JiangLe/p/9851958.html

  7. volatile和不加volatile的区别

    http://blog.chinaunix.net/uid-25100840-id-3067899.html 对于一个地址,如果加上了volatile参数,这个地址也就不会经过编译器优化,也就是说这个 ...

  8. 用c语言创建双向环形链表

    作为一个C开发人员,无论在求职笔试题中,还是在工程项目中,都会遇到用c语言创建双向环形链表.这个也是理解和使用c指针的一项基本功. #include<...>//头文件省略 typedef ...

  9. 工控随笔_20_西门子_WinCC的VBS脚本_09_常量和流程控制_02

    vbs不但提供了分支结构,还提供了丰富的循环形式.一共有3种循环: 1.for循环 2.do...loop循环 3.while循环 各种循环有各自的特点,在使用的时候可以进行转换. 前面已经描述过Fo ...

  10. 常用LINQ关键字用法汇总

    背景 传统上,针对数据的查询都以简单的字符串表示,而没有编译时类型检查或 IntelliSense 支持.此外,还需要针对每种数据源学习一种不同的查询语言:SQL 数据库.XML 文档.各种 Web ...