关于阿里云centos系统下宝塔面板部署django/中pip install mysqlclient失败问题的大总结/阿里云使用oss长期访问凭证

python版本3.12.0

项目的版本依赖

问题1

解决方案

sudo vim  /etc/profile

export MYSQLCLIENT_CFLAGS="-I/usr/include/mysql"
export MYSQLCLIENT_LDFLAGS="-L/usr/lib64/mysql"

Esc退出编辑模式
:wq退出并且保存

问题二 说是找不到 mysql.h头文件

CentOS ‘mysql/mysql.h‘: No such file or directory

问题概述:起因是为了方便直接用宝塔安装了php和mysql,然后项目需要开启pdo_mysql,却发现没有这个拓展包,于是手动去下载该拓展包进行编译。但是执行make命令时出现了问题,报错如下:

参考博客:https://www.cnblogs.com/inkqx/p/13566250.html

应该是找不到mysql.h,但是系统已经装了mysql,应该是有包含该文件的,所以先看下该文件是否存在。

  1. 执行find命令查找该文件
    find / -name mysql.h
    得到该文件路径/www/server/mysql/include/mysql.h
    ps:这是宝塔安装的路径,因此会与默认路径不一致
  2. 建立软连接,执行
    ln -s /www/server/mysql/include/* /usr/local/include/
  3. 注意建立软连接一定要在宝塔面板的终端中执行
    说明:这里的 /www/server/mysql/include/* ,是你的mysql路径/include/*,而/usr/local/include/是原默认路径,可以不更改

寻找虚拟环境:
find / -name activate

进入虚拟环境 source /www/wwwroot/www.atlongwen.top/DNA/venv/Scripts/activate
source  /www/server/pyporject_evn/versions/3.12.0/lib/python3.12/venv/scripts/common/activate

pip install -r /www/wwwroot/www.atlongwen.top/DNA/requirements.txt

如果还是不可以请安装以下依赖 ,再执行以上的解决方案
sudo yum install pkgconfig

sudo yum install mysql-devel

sudo yum install mysql-connector-c

pip install mysqlclient  重要

问题 django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module.

解决步骤:
一,安装mysql驱动,打开cmd.

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/  pymysql

二,在django项目下的setting.py下进行配置。

# Database
# https://docs.djangoproject.com/en/4.0/ref/settings/#databases

DATABASES = {
    'default':
    {
        'ENGINE': 'django.db.backends.mysql',    # 数据库引擎
        'NAME': 'jljupcs', # 数据库名称
        'HOST': '127.0.0.1', # 数据库地址,本机 ip 地址 127.0.0.1
        'PORT': 3306, # 端口
        'USER': 'root',  # 数据库用户名
        'PASSWORD': '', # 数据库密码
    }
}

  

三,在与 settings.py 同级目录下的 init.py 中引入模块和进行配置

import pymysql
pymysql.install_as_MySQLdb()

直接打开终端执行迁移就可以了 ,不用进入虚拟环境

生成迁移文件       python manage.py makemigrations

执行py迁移          python manage.py migrate

                       

迁移完数据库直接 启动就可以了

关于uniapp上传到django服务器后台 图片文件上传不上去  权限问题

增加权限

增加权限 tmp文件夹

关于阿里云使用oss长期访问凭证 

如何为Python SDK配置访问凭证 - 对象存储 OSS - 阿里云

centos中宝塔面板中部署的django项目无法获取系统环境变量

获取环境变量中的OSS访问凭证

    oss_access_key_id = os.getenv('OSS_ACCESS_KEY_ID')oss_access_key_secret = os.getenv('OSS_ACCESS_KEY_SECRET')print("OSS_ACCESS_KEY_ID:", oss_access_key_id)print("OSS_ACCESS_KEY_SECRET:", oss_access_key_secret)

 获取不到环境变量

和阿里云的技术人员探讨了半天

最终解决方案 例子

 
auth = oss2.Auth(access_key_id, access_key_secret)bucket = oss2.Bucket(auth, 'oss-cn-hangzhou.aliyuncs.com', 'examplebucket')

直接将access_key_id access_key_secret写在代码里就可以上传了,不在centos系统中设置osss的环境变量了

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/307074.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大数据入门之如何利用Phoenix访问Hbase

在大数据的世界里,HBase和Phoenix可谓是一对黄金搭档。HBase以其高效的列式存储和强大的数据扩展能力,成为大数据存储领域的佼佼者;而Phoenix则以其SQL化的操作方式,简化了对HBase的访问过程。今天,就让我们一起看看如…

LC 515.在每个树行中找最大值

515. 在每个树行中找最大值 给定一棵二叉树的根节点 root ,请找出该二叉树中每一层的最大值。 示例1: 输入: root [1,3,2,5,3,null,9] 输出: [1,3,9] 示例2: 输入: root [1,2,3] 输出: [1,3] 提示: 二叉树的节点个数的范围是…

【单片机毕业设计8-基于stm32c8t6的RFID校园门禁系统】

【单片机毕业设计8-基于stm32c8t6的RFID校园门禁系统】 前言一、功能介绍二、硬件部分三、软件部分总结 前言 🔥这里是小殷学长,单片机毕业设计篇8基于stm32的RFID校园门禁系统 🧿创作不易,拒绝白嫖可私 一、功能介绍 -----------…

【SVN】clean up报错:Cleanup failed to process the following paths 解决方法

报错来源:代码更新有一个文件既不能接受自己的也不能接受别人的,只能取消,再提交提醒clean up,随后报标题错误。 解决方法:参考https://www.cnblogs.com/pinpin/p/11395438.html 注:如果clean up的时候有…

Python(10):常见的4种设计模式(单例/工厂/策略/观察者)

文章目录 一、单例模式二、工厂模式三、策略模式四、观察者模式 程序中设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案,这些解决方案是众多软件按开发人员经过相当长的一段时间的实验和错误总结出来的。使用设计模式是为了重用代码、让代码更容易…

SSL数字证书

SSL数字证书产品提供商主要来自于国外,尤其是美国,原理和使用操作系统一样,区别在于SSL数字证书目前无法替代性,要想达到兼容性99%的机构目前全球才3-4家,目前国内的主流网站主要使用的是国际证书,除了考虑…

文章分享:《二代测序临床报告解读指引》

[摘要] 二代测序(next generation sequencing,NGS)已成为中国临床肿瘤医生常用检测工具,而中国超 90%临床医生需要 NGS 报告解读支持。因此,为提升临床医生 NGS 报告解读能力,特编写…

django基于python的法院执法案件管理系统

本课题使用Python语言进行开发。代码层面的操作主要在PyCharm中进行,将系统所使用到的表以及数据存储到MySQL数据库中,方便对数据进行操作本课题基于WEB的开发平台,设计的基本思路是: 框架:django/flask 后端&#xff…

AWE2024酷开科技智能家居,让生活从此更智能!

随着科技的飞速发展,智能家居已经成为了人们生活中不可或缺的一部分。在这个领域里,酷开科技品类逐渐丰富,在AWE2024展会上展现出耀眼光芒,将全品类智能家电新品集结亮相!让人们的生活更加便捷、舒适和智能化。 酷开K…

C++的stack和queue类(三):适配所有容器的反向迭代器

目录 前言 list的反向迭代器 list.h文件 ReverseIterator.h文件 test.cpp文件 前言 迭代器按性质分类: 单向:forward_list双向:list随机:vector / deque 迭代器按功能分类: 正向反向const list的反向迭代器…

elementUI 下拉框加提示文案

效果如下&#xff1a; 展示文案在最下面&#xff0c;跟选项有个分割线 <el-select v-model"value" placeholder"请选择" clearable popper-class"addNotice" class"addNoticeS" visible-change"(v) >selectNotice(v,展示…

独一无二:探索单例模式在现代编程中的奥秘与实践

设计模式在软件开发中扮演着至关重要的角色&#xff0c;它们是解决特定问题的经典方法。在众多设计模式中&#xff0c;单例模式因其独特的应用场景和简洁的实现而广受欢迎。本文将从多个角度详细介绍单例模式&#xff0c;帮助你理解它的定义、实现、应用以及潜在的限制。 1. 什…

书生·浦语大模型实战营 | 第3次学习笔记

前言 书生浦语大模型应用实战营 第二期正在开营&#xff0c;欢迎大家来学习。&#xff08;参与链接&#xff1a;https://mp.weixin.qq.com/s/YYSr3re6IduLJCAh-jgZqg 第三堂课的视频链接&#xff1a;https://www.bilibili.com/video/BV1QA4m1F7t4/ 本次笔记是学习完第三堂课…

vueRouter动态路由(实现菜单权限控制)

一、权限控制管理&#xff1a; 对于企业级的项目, 我们可能需要对项目做权限控制管理, 实现不同角色的用户登录项目根据所拥有的权限访问不同的页面内容&#xff0c;此时就需要使用到动态路由来对权限页面做限制。 【使用vue-router实现动态路由&#xff0c;达到实现菜单权限…

FFmpeg: 简易ijkplayer播放器实现--06封装打开和关闭stream

文章目录 流程图stream openstream close 流程图 stream open 初始化SDL以允许⾳频输出&#xff1b;初始化帧Frame队列初始化包Packet队列初始化时钟Clock初始化音量创建解复用读取线程read_thread创建视频刷新线程video_refresh_thread int FFPlayer::stream_open(const cha…

Docker 学习笔记(七):介绍 Dockerfile 相关知识,使用 Dockerfile 构建自己的 centos 镜像

一、前言 记录时间 [2024-4-12] 系列文章简摘&#xff1a; Docker学习笔记&#xff08;二&#xff09;&#xff1a;在Linux中部署Docker&#xff08;Centos7下安装docker、环境配置&#xff0c;以及镜像简单使用&#xff09; Docker 学习笔记&#xff08;三&#xff09;&#x…

【MoS2】应变增强的单层MoS2光电探测器

这篇文章的标题是《Strain-Enhanced Large-Area Monolayer MoS2 Photodetectors》&#xff0c;作者是Borna Radatovic等人&#xff0c;发表在《ACS Applied Materials & Interfaces》期刊的2024年第16卷。文章主要研究了应变增强的大面积单层MoS2光电探测器的性能和应用潜力…

【安全】挖矿木马自助清理手册

一、什么是挖矿木马 挖矿木马会占用CPU进行超频运算&#xff0c;从而占用主机大量的CPU资源&#xff0c;严重影响服务器上的其他应用的正常运行。黑客为了得到更多的算力资源&#xff0c;一般都会对全网进行无差别扫描&#xff0c;同时利用SSH爆破和漏洞利用等手段攻击主机。 …

GC垃圾回收

垃圾回收 1、什么是 垃圾回收机制&#xff1a; 理解Java的垃圾回收机制&#xff0c;就要从&#xff1a;“什么时候”&#xff0c;“对什么东西”&#xff0c;“做了什么”三个方面来具体分析。 ​ 第一&#xff1a;“什么时候”即就是GC触发的条件。 ​ GC触发的条件有两种…

相机模型浅析

相机模型 文章目录 相机模型四个坐标系针孔相机模型世界坐标系到相机坐标系相机坐标系到图像坐标系图像坐标到像素坐标 四个坐标系 ①世界坐标系&#xff1a;是客观三维世界的绝对坐标系&#xff0c;也称客观坐标系。因为数码相机安放在三维空间中&#xff0c;我们需要世界坐标…