zoukankan      html  css  js  c++  java
  • Django中遇到的mysql问题

    最近在用Django写个网站,连接mysql的时候出现了几个问题,总结一下

    写好setting.py和models.py后,syncdb都没什么问题,在测试后台发表文章的时候就出错了,本来是测试markdown的图片与codelite代码高亮,发现发表后debug模式就报错

    Error:Warning: Incorrect string value: 'xE6xB5x8BxE8xAFx95...' for column 'object_repr' at row 1

    查了一下发现是mysql的默认编码的问题,照着网上的改了/etc/mysql/my.cnf后不行,在client里加上default-character-set=utf8直接导致mysql启动不起来了,然后在mysqld里写上了default-character-set=utf8,还是不行,于是直接手动修改数据库使用的编码

    ALTER DATABASE pyblog DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

    重新删除之前的数据库重新建立数据库遂搞定。

    昨天关机后发现今天 MySQL重启 报错 Can't connect to local MySQL server through socket

    看了下我的/var/run/mysqld和/var/lib/mysqld的目录里都没有mysqld.sock,也没法像网上那样直接ln -s /var/lib/mysql/mysql.sock /var/run/mysqld/mysqld.sock软链接过去,然后找到了一个方法在root下

     /usr/bin/mysql_install_db 

     然后再看/var/run/mysqld/目录下应该就已经有mysqld.sock了

    mysql_install_db 脚本的目的是生成新的MySQL授权表。它不覆盖已有的MySQL授权表,并且它不影响任何其它数据。如果你想要重新创建授权表,首先停止mysqld服务器

    重启mysql然后再python manage.py runserver发现搞定了

  • 相关阅读:
    这是个神奇的博客
    Tomcat Access Log 的格式
    CA证书
    记一次性能调优
    web系统能力培养计划
    金融知识学习
    读《华为区块链白皮书》
    马未都说收藏:陶瓷篇(8、9)元青花、永宣青花
    阿里历年面试试题
    回车(CR)换行(LF)的来历及区别
  • 原文地址:https://www.cnblogs.com/timeship/p/3277570.html
Copyright © 2011-2022 走看看