MySQL的卸载与安装(Linux)

MySQL 前言1. 卸载MySQL1.1 查询与关闭对应MySQL服务1.2 卸载对应安装包 2. 安装MySQL2.1 配置MySQL官方yum源2.2 开始安装MySQL 前言 在这里演示的卸载与安装MySQL都是在Linux的Centos 7.6 环境下,不同环境会有所出入。 为了避免安装和卸载MySQL过程中受到权限的约束,尽量切换成root用户,并且安装成功后普通用户也可以直接使用。 接下来的操作都是在root的身份下进行的。 安装MySQL前我们来查看一下Linux系统中是否存在有MySQL或是已经运行的数据库。想要重新安装MySQL,是需要将原有数据库进行卸载。 1. 卸载MySQL 1.1 查询与关闭对应MySQL服务 查看当前状态下是否有正在运行的MySQL: ps ajx | grep mysql 查看当前状态下是否有正在运行的mariadb:(mariadb就是MySQL,只不过是MySQL拉出来的另一个开源分支) ps ajx | greg mariadb 如果存在上述提到的两个运行的服务,要将其服务进行关闭才能进行卸载。如果没有进行的服务就不用管。 关闭MySQL正在运行的服务: systemctl stop mysqld 1.2 卸载对应安装包 如果当前系统下装有MySQL或是mariadb,那么当初在装的时候一定是有各式各样的MySQL和mariadb的安装包。 在重新安装MySQL或是mariadb,是需要将这些安装包也进行卸载删除。 这些安装包都是通过yum源获取,其后缀名是以.rpm结尾。 查询系统内是否存在MySQL的安装包: rpm -qa | grep mysql //-qa 参数作用:查看所有以 .rpm 结尾的安装包 这些安装包如果有耐心的话我们可以一个一个进行删除,但是也可以直接进行批量化删除: rpm -qa | grep mysql | xargs yum -y remove 将搜索的安装包信息提交到管道,然后交给xargs卸载进程进行批量化处理。由于是在yum源进行下载的,对应卸载方法为yum - y remove(-y参数的作用是为了防止卸载时一直询问是否卸载)。 最后一步查看一下etc/目录下是否存在my.cnf文件: ls etc/my.

一比一实现ChatGPT流式接口前端显示效果(打字机效果)【对比几种不同的流式实现方案】

前端实现GPT或者其他大模型的流式推送的数据接收可以通过EventSource、Axios、或者基于EventSource实现的@microsoft/fetch-event-source插件库; GPT官方是基于原生EventSource实现的流式数据接收,我们作为个人开发使用可以使用Axios或者使用@microsoft/fetch-event-source插件库,后两种可以携带header并且操作接口请求参数格式较为自由 话不多说,直接开始(注:以下代码基于vue) 方案一 EventSource sendSSEMessage() { // 只有当eventSource不存在时才创建新的EventSource连接 if (!this.eventSource) { this.messages.push({text: this.inputText, isMine: true}); this.messages.push({text: "", isMine: false}); // 创建新的EventSource连接 this.eventSource = new EventSource('http://127.0.1.1:8383/completions?messages='+this.inputText); // 设置消息接收的回调函数 this.eventSource.onmessage = (event) => { const data = JSON.parse(event.data); this.messages[this.messages.length - 1].text += data.choices[0].delta.content; }; // 可选:监听错误事件,以便在出现问题时能够重新连接或处理错误 this.eventSource.onerror = (event) => { console.error("EventSource failed:", event); this.eventSource.close(); // 关闭出错的连接 this.eventSource = null; // 重置eventSource变量,允许重建连接 }; } } 异常处理和重连 处理连接中断或其他异常也是至关重要的。你可能需要在失去连接时尝试重新连接,或者至少提醒用户当前的连接状态。这可以通过监听EventSource的错误事件并采取适当的行动来实现。 如果需要携带header或者其他参数可以考虑使用更完善的插件库@microsoft/fetch-event-source,我自己开发的GPT4.0网站也是基于这个插件库实现的, 这里给自己网站打个广告—>>欢迎各位看官老爷点击这里参观 –重回正题–

【Python】成功解决TypeError: ‘int‘ object is not iterable

【Python】成功解决TypeError: ‘int’ object is not iterable 🌵文章目录🌵 🚀 一、引言🔍 二、错误原因解析🛡️ 三、解决方案 示例1:迭代列表示例2:迭代字符串示例3:迭代字典的键或值示例4:迭代整数的每一位 🎯 四、避免常见误区💪 五、实践应用 错误的函数实现正确的函数实现和调用方式 📚 六、总结🤝 七、期待与你共同进步 🚀 一、引言 在Python编程中,我们经常会遇到各种错误和异常。其中,TypeError: 'int' object is not iterable 是一个相当常见的错误,经常让初学者感到困惑。这个错误通常意味着你试图对一个整数执行迭代操作,但整数本身是不可迭代的。在本文中,我们将深入探讨这个错误的原因,并提供解决方案,帮助你避免在将来遇到类似的问题。 🔍 二、错误原因解析 首先,我们需要理解为什么会出现这个错误。在Python中,整数(int)是不可迭代的对象,这意味着我们不能使用 for...in 循环来遍历一个整数。如果你尝试这样做,Python解释器就会抛出 TypeError: 'int' object is not iterable 错误。 例如,下面的代码会导致这个错误: num = 5 for i in num: print(i) 在这个例子中,我们试图对整数 num 进行迭代,这是不允许的,因为整数不是可迭代对象。 🛡️ 三、解决方案 要解决这个问题,你需要确保你正在迭代的对象是可迭代的。这通常意味着你需要检查你的代码,确保你在使用 for...in 循环时,迭代的是列表、元组、字典、集合或字符串等可迭代对象。 示例1:迭代列表 my_list = [1, 2, 3, 4, 5] for i in my_list: print(i) 示例2:迭代字符串 my_string = "

Python实用技巧:输出列表(list)的倒序/逆序的几种方法

Python实用技巧:输出列表(list)的倒序/逆序的几种方法 🌵文章目录🌵 一、🚀 使用内置的[::-1]切片操作二、🚀 使用reversed()函数三、🚀 使用for循环和append()方法四、🎯 性能比较五、🔚 总结六、🤝 最后 在Python编程中,我们经常需要处理列表(list)这种数据结构。列表是一个有序的元素集合,它支持各种操作,包括元素的添加、删除、修改和查找等。而列表的倒序或逆序操作也是常见的需求之一。本文将向你介绍几种在Python中输出列表倒序或逆序的方法,帮助你更高效地处理列表数据。 关键词:#Python实用技巧 #列表倒序 #reversed函数 #切片操作 #列表推导式 #性能比较 #最佳实践 #额外小贴士 #总结 一、🚀 使用内置的[::-1]切片操作 Python的列表支持切片操作,你可以使用[::-1]这种特殊的切片方式来轻松地实现列表的倒序。这是一种非常简洁且高效的方法。 # 示例列表 my_list = [1, 2, 3, 4, 5] # 使用[::-1]切片操作得到倒序列表 reversed_list = my_list[::-1] # 输出倒序列表 print(reversed_list) # 输出:[5, 4, 3, 2, 1] 二、🚀 使用reversed()函数 reversed()是Python内置的一个函数,它返回一个反转的迭代器。如果你想要一个临时的反转列表,而不是创建一个新的列表,这个函数会非常有用。需要注意的是,reversed()返回的是一个迭代器,如果你需要列表形式的输出,可以将其转换为列表。 # 示例列表 my_list = [1, 2, 3, 4, 5] # 使用reversed()函数得到倒序迭代器,并转换为列表 reversed_list = list(reversed(my_list)) # 输出倒序列表 print(reversed_list) # 输出:[5, 4, 3, 2, 1] 三、🚀 使用for循环和append()方法 虽然这种方法相对繁琐,但在理解列表和循环的基础上,它可以帮助你更好地理解倒序列表的实现过程。

python解析xml

Python 有三种方法解析 XML:ElementTree、SAX 以及 DOM。 使用 ElementTree 解析 xml xml.etree.ElementTree 是 Python 标准库中用于处理 XML 的模块。 ElementTree 和 Element 对象: ElementTree: ElementTree 类是 XML 文档的树形表示。它包含一个或多个 Element 对象,代表整个 XML 文档。Element: Element 对象是 XML 文档中元素的表示。每个元素都有一个标签、一组属性和零个或多个子元素。 ET.ElementTree() ET.ElementTree() 是 xml.etree.ElementTree 模块中的一个类,它用于创建一个 ElementTree 对象,这个对象可以包含一个完整的 XML 文档树结构。通过这个类,你可以方便地操作整个 XML 文档,包括解析、创建、修改和写入 XML 数据。 当你创建一个 ElementTree 对象时,你通常需要提供一个根元素(Root Element)作为参数。这个根元素是整个 XML 文档的顶级元素,所有的其他元素都会作为它的子元素存在。 以下是 ET.ElementTree() 类的一些常用方法: parse(): 解析一个 XML 文件或字符串,并返回一个 ElementTree 对象。write(): 将 ElementTree 对象写入到一个文件或文件对象中。find(): 在 ElementTree 对象中查找与指定路径或标签名匹配的元素。findall(): 在 ElementTree 对象中查找所有与指定路径或标签名匹配的元素。 import xml.

AI绘画Stable Diffusion提示词(Prompt)原理详解,扫盲级教程还请收藏!

阅读本文大概需要 7.88 分钟。 点击上方👆名片后,送你 AI 资料 本文主要分为五部分: 1. 提示词概念详解 2. 提示词分类 & 提示词书写 提示词权重原理 & 负面提示词介绍 4. SD 出图参数详解 AI 绘画必备提示词工具 我们在使用AI绘画制作我们的图片的时候,必须要输入一大串 Prompt 提示词,我们来重点来讲解 Prompt 提示词是什么。 我们本次还是主要以 SD 为主,但是在提示词上的学习,MJ 和 SD 的提示词大体逻辑还是差不多的。 1、提示词概念详解 在开始展开讲解之前,我们先来了解一些概念,这样能方便更加深入地学习和理解。 那么什么是 Prompt 提示词呢?主要指用户输入的文本或图像信息,目的是指导模型根据一些特定的需求生成对应的作品。说白了就是用来告诉 AI 我要生成什么样的图片,你可以理解为和 AI 沟通的一种特定格式的语言。 我们在上一篇文章里面,介绍过「文生图」和「图生图」SD 的这两个功能。 「文生图」主要是以文字来实现和 AI 模型的沟通过程,而使用的文字就需要用到我们的 Prompt 提示词。 「图生图」可以依靠图片来与 AI 模型来传达信息,图生图里也有 Prompt 提示词。 Prompt 提示词在AI绘画里面包含的内容也是非常广的,例如说图片主题、图片风格、图片场景、人物形象特点、服饰特点、额外参数等等。 你可能会看到有时候我们为了生成一张图片,需要用到十几行的 Prompt 提示词,其实很多都是固定的、有规律的。 对即将要生成的作品描述越详细,Prompt 提示词越长,AI 模型越能精准的输出与我们需求一致的作品。 2、提示词分类 & 提示词书写 说了那么多,到底怎么写 Prompt 提示词呢? 其实写提示词是不受限制的,不管你写什么,AI 都能给你画出来,但如果你想精准的让 AI 理解你的需求,提示词的基本语法和规则这些我们还是要掌握的。

python入门001~python开发工具 pycharm的安装与破解(mac和window都有讲)

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7 深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前! 因此收集整理了一份《2024年最新Python全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。 既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Python知识点,真正体系化! 由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新 如果你需要这些资料,可以添加V获取:vip1024c (备注Python) 正文 1,进入官网后,点击下图所示的下载 2,选择你电脑对应的系统下载。window电脑就点window,mac电脑就点mac。 我也会把安装包放到网盘里,如果大家在官网下载失败,可以私信老师,索要安装包。 二,安装python开发者gon npycharm 在window电脑和mac电脑上安装都一样的,都是双击你第一步下载的安装包。 2-1window电脑安装pycharm 1,双击你下载的exe软件,会出现下图所示 2,然后会出现一个选择安装目标路径的提示,你可以自定义安装路径也可以选择默认安装路径(默认安装路径是在C盘,以后运行软件时会更加快),我是自定义安装路径把软件安装在D盘。选择完后点击Next即可。 3,然后会出现安装选择的界面就是配置你的Pycharm的安装,除了32位,其他的全部选中,点击Next。 4,点击Install即可。 5,然后就会出现安装过程界面以及下载一些主要的程序 6,安装完成,点击Finish即可。 7,第一次启动会出现下面设置界面,主要是IDE的配置信息,如果没有选择 Do not import setting 即可。 8,然后出现注册界面。 我们第三步会将破解,如果你是window电脑,直接忽略下面的mac安装,看第三步的破解即可 2-2mac电脑安装pycharm 1,点击安装包 2,按照下图操作 到这里我们就安装完成了 三,pycharm的破解 我们安装完pycharm软件后,只有30天的使用期,如果你想长久使用,就需要做破解了。接下来教大家如何破解。 1,进入如下网址:http://idea.lanyus.com/ 2,复制注册码 3,如下图勾选 4,把注册码复制进来,然后点ok 5,这样就成功的实现破解了 一、Python所有方向的学习路线 Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。 二、Python必备开发工具 工具都帮大家整理好了,安装就可直接上手! 三、最新Python学习笔记 当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。 四、Python视频合集 观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。 五、实战案例 纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。 六、面试宝典 简历模板 网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。 需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注python) 一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长! ,不再深入研究,那么很难做到真正的技术提升。** 需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注python) [外链图片转存中…(img-5niKocEK-1713164825554)] 一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

SpringAI初体验之HelloWorld

目录 前言1.准备工作2.初始化项目3.解决问题3.1 Connection Time out 连接超时问题3.2 You exceeded your current quota 额度超限问题 4.访问调用5.总结 点我去AIGIS公众号查看本文 前言 在逛SpringBoot页面时突然看到页面上新增了一个SpringAI项目,于是试了一下,感觉还行。其实就是封装了各家的api调用过程,不过这也是一个好的开始。最近我一直在思考,什么是AI时代的程序员?最后得到的答案是可能一个人就是一个开发团队吧。目前AI的能力在单个需求方面对程序员都是碾压性的,程序员现在能做的就是理解整个的业务需求,进而合作实现。试想如果未来AI能一个人干一个团队的活,那程序员就只需要做业务分析就好了。那时可能谁理解的好,谁就是好的程序员。 1.准备工作 首先我们需要的是全面的新环境。因为国内很多项目都还是基于JDK1.8做的,很多人还用的是IDEA2019,这已经完全跟不上时代的潮流了。因此现在我们需要的是: JDK ≥ 17IDEA ≥ 2022OpenAI的keyFan Qiang 如果你无法使用OpenAI的环境,那么你还可以看看其他的环境,目前SpringAI支持的环境有很多了,具体可以查看https://spring.io/projects/spring-ai 2.初始化项目 新建项目 勾选Web和AI 等待Maven完成安装 如果阿里云的仓库下载失败,就不要死磕了,换成默认的 <repository> <id>spring-milestones</id> <name>Spring Milestones</name> <url>https://repo.spring.io/milestone</url> <snapshots> <enabled>false</enabled> </snapshots> </repository> 注意观察pom中的引用 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.ai</groupId> <artifactId>spring-ai-openai-spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> 新建一个ChatController,代码及其简单 @RestController public class ChatController { private final OpenAiChatClient chatClient; @Autowired public ChatController(OpenAiChatClient chatClient) { this.chatClient = chatClient; } @GetMapping("

2024最新python毕设选题推荐,毕业设计题目大全(文末附源码)

一、python 毕设 选题推荐 以下为学长手动整理python 毕业设计 项目,完全可以作为当前较新的毕业设计题目选择方向,给各位同学参考 1 基于MapReduce的气候数据的分析 2 基于关键词的文本知识的挖掘系统的设计与实现 3 基于概率图模型的蛋白质功能预测 4 基于第三方库的人脸识别系统的设计与实现 5 基于hbase搜索引擎的设计与实现 6 基于Spark-Streaming的黑名单实时过滤系统的设计与实现 7 客户潜在价值评估系统的设计与实现 8 基于神经网络的文本分类的设计与实现 9 基于Apriori的商品关联关系分析与挖掘 10 基于词频统计的中文分词系统的设计与实现 11 K-means算法在微博数据挖掘中的应用 12 图像对象检测分析系统的研究和应用 13 基于Apriori关联规则的电子商务潜在客户的数据挖掘 14 基于Spark的电商用户行为分析系统的设计与实现 15 音乐推荐系统的研究与应用 16 基于大数据的高校网络舆情监控引导系统的研究与应用 17 基于医疗大数据的肿瘤疾病模式分析与研究 18 基于支持向量机的空间数据挖掘及其在旅游地理经济中的应用 19 基于深度残差网络的糖尿病视网膜病变分类检测研究 20 基于大数据分析的门户信息推荐系统 21 Web数据挖掘及其在电子商务中的研究与应用 22 面向电信CRM的数据挖掘研究与应用 23 基于物联网的小麦生长环境数据采集与数据挖掘技术研究与应用 24 基于k-means算法在微博数据挖掘中的应用 25 Apriori关联规则算法的数据挖掘技术挖掘电子商务潜在客户的应用 26 基于大数据的个性化学习环境构建的研究与应用 27 基于Kafka和Spark流计算集群的铁道供电监控实时处理系统的研究与应用 28 面向柑橘病虫害预警的Hadoop数据挖掘技术研究与应用 29 基于大数据的高校网络舆情监控引导系统的研究与应用 30 基于Hadoop的高校固定资产管理系统研究与实现 31 基于MongoDB/HBase的知识共享平台的设计与实现 32 基于Hadoop与SSM的大数据分布式云存储平台设计与实现

【IDEA】解决idea2024无法使用远程构建dockerfile的问题

解决idea2024无法使用远程构建dockerfile的问题 问题描述解决办法1解决办法2下载docker.exe解决buildx工具找不到的问题 问题描述 在 idea 或者其他 Jetbrains IDE 中,如果你使用的版本是 2023.x 或以前,在 idea 中运行 dockerfile 时,在配置正确的远程 docker 服务器后,可以正常运行构建,但是在更新到 2024 版本后,idea 无法正常构建 dockerfile,提示 docker.exe 找不到 解决办法1 下载并安装docker desktop,此方法可使用本地docker构建镜像,但是比较繁琐,且安装docker在windows下会出现一定的性能问题,不推荐 解决办法2 下载docker.exe 在链接中选择最新的 docker,解压到任意目录 docker.zip链接 解压后,在idea - 设置 - 构建、执行、部署 - Docker中找到工具,选择docker.exe解压的位置,点击确定 解决buildx工具找不到的问题 在上述流程后,仍有可能出现buildx工具无法找到的情况,此时,在你的用户文件夹下(或在文件管理地址栏输入 %USERPROFILE% 定位),新建 .docker 文件夹(注意有个“.”),下面再新建一个cli-plugins文件夹,访问如下 链接 ,下载下来,然后重命名为 docker-buildx.exe,然后放入该文件夹中 返回idea,就可以正常构建镜像了

前端必备技能——轮播图(原生代码+插件)

height: 20px; border-radius: 50%; margin-right: 6px; background: rgba(0, 0, 0, .3); } .circle .current { background-color: #fff; } 3.动画效果 接下来就是我们的重头戏,将页面中的图片滚动起来就是轮播图: 制作轮播图我们所想要的效果: 在写javascript之前,我们需要先绑定“load”事件,为了能够让页面渲染完再执行javascript 代码如下: window.addEventListener(‘load’, function() { } 鼠标经过轮播图 当鼠标经过轮播图,左右按钮就显示,一旦离开就隐藏左右按钮。 用mouseenter、mouseleave两个事件来绑定执行: focus.addEventListener(‘mouseenter’, function() { arrowl.style.display = ‘block’; arrowr.style.display = ‘block’; }) focus.addEventListener(‘mouseleave’, function() { arrowl.style.display = ‘none’; arrowr.style.display = ‘none’; }, 2000); }) 点击左右按钮图片就播放一张 思路:我们先定义一个全局变量num,当我们点击一下就自增一次,然后滚动的距离就是ul的滚动距离,ul滚动距离=num*图片宽度。 var num = 0; // 右侧按钮 arrowr.addEventListener(‘click’, function() { if (flag) { // flag = false; //关闭节流阀

Java Web实验九:使用JDBC完成数据的增删改查

实验九 使用JDBC完成数据的增删改查 一、实验目的 1. 熟练JDBC的基本概念和原理; 2. 掌握使用JDBC进行数据库连接和操作的方法; 3. 熟悉JDBC在增删改查中的应用; 二、实验内容 在实际项目的开发中,用户信息是存放在数据库中的,管理员对用户信息进行管理的过程,无时无刻不涉及到增删改查操作。本次实验要求创建数据库表user表,包括属性id(主键)、name、password、email、birthday等字段,其中id为学号,创建数据库表后使用JDBC实现对数据库中用户信息的增加(JdbcInsertTest.java)、删除(DeleteUserTest.java)、修改(UpdateUserTest.java)和查询(FindAllUserTest.java和FindUserByIdTest.java)操作,要求数据库表中有一行信息为学生本人的学号姓名。 三、实验结果(源代码、运行截图) 源代码 User.java: import java.util.Date; public class User { private int id; private String name; private String password; private String email; private Date birthday; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getUsername() { return name; } public void setUsername(String username) { this.name = username; } public String getPassword() { return password; } public void setPassword(String password) { this.

SQL Server详细使用教程:安装步骤、必备知识点与常见问题解析

一、SQL Server安装步骤 1. 环境准备 硬件要求:确保系统硬件满足SQL Server最低要求(如CPU、内存、硬盘空间等)。操作系统:支持Windows、Linux或macOS(通过Docker)。下载安装包:访问Microsoft官网,下载相应平台的SQL Server安装程序。 2. 安装过程 Windows: 运行安装向导:双击安装程序,选择"全新SQL Server独立安装或向现有安装添加功能"。产品密钥:输入有效的产品密钥或选择评估版。许可条款:接受许可条款。安装程序更新:选择是否检查更新。功能选择:根据需求选择要安装的功能,如数据库引擎服务、SSMS等。实例配置:指定实例名称、根目录、数据目录等。服务器配置:设置服务账号、排序规则、TCP端口(默认1433)等。数据库引擎配置:设置身份验证模式(混合模式需设置SA密码),添加SQL Server管理员。Analysis Services配置(可选):设置服务器模式、数据目录等。Reporting Services配置(可选):指定安装模式(Native或SharePoint)、URL等。安装规则检查:安装程序将检查系统配置,确保满足安装条件。安装:开始安装,安装过程可能需要一段时间。 Linux: 添加Microsoft包仓库:根据官方文档,为系统添加SQL Server的Yum/Apt仓库。安装SQL Server:使用sudo yum install -y mssql-server(RHEL/CentOS)或sudo apt-get install -y mssql-server(Ubuntu/Debian)命令安装。配置与启动:运行sudo /opt/mssql/bin/mssql-conf setup进行配置(包括SA密码、版本等),然后sudo systemctl start mssql-server启动服务。 3. 验证安装 Windows:通过SQL Server Management Studio (SSMS) 连接本地或远程SQL Server实例,验证连接与服务状态。Linux:运行systemctl status mssql-server检查服务状态,使用sqlcmd -S localhost -U SA -P 'YourStrong!Passw0rd'命令连接验证。 二、必备知识点 1. T-SQL基础 数据类型:理解并熟练使用数值型、字符串、日期/时间、二进制、特殊类型等数据类型。DDL:掌握创建、修改、删除表(CREATE TABLE, ALTER TABLE, DROP TABLE)、索引(CREATE INDEX, DROP INDEX)、视图(CREATE VIEW, ALTER VIEW, DROP VIEW)等操作。DML:熟练进行插入(INSERT)、更新(UPDATE)、删除(DELETE)、查询(SELECT)数据的操作。事务:理解事务的概念,掌握BEGIN TRANSACTION, COMMIT, ROLLBACK等语句的使用。 2.

Hive概述与基本操作

一、Hive基本概念 1.什么是hive? (1)hive是数据仓库建模的工具之一 (2)可以向hive传入一条交互式的sql,在海量数据中查询分析得到结果的平台 2.Hive简介 Hive本质是将SQL转换为MapReduce的任务进行运算,底层由HDFS来提供数据存储,说白了hive可以理解为一个将SQL转换为MapReduce的任务的工具,甚至更近一步说hive就是一个MapReduce客户端 3.Hive的优缺点: 优点: 1、操作接口采用类sql语法,提供快速开发的能力(简单、容易上手) 2、避免了去写MapReduce,减少开发人员的学习成本 3、Hive的延迟性比较高,因此Hive常用于数据分析,适用于对实时性要求不高的场合 4、Hive 优势在于处理大数据,对于处理小数据没有优势,因为 Hive 的执行延迟比较高。(不断地开关JVM虚拟机) 5、Hive 支持用户自定义函数,用户可以根据自己的需求来实现自己的函数。 6、集群可自由扩展并且具有良好的容错性,节点出现问题SQL仍可以完成执行 缺点: 1、Hive的HQL表达能力有限 (1)迭代式算法无法表达 (反复调用,mr之间独立,只有一个map一个reduce,反复开关) (2)数据挖掘方面不擅长 2、Hive 的效率比较低 (1)Hive 自动生成的 MapReduce 作业,通常情况下不够智能化 (2)Hive 调优比较困难,粒度较粗 (hql根据模板转成mapreduce,不能像自己编写mapreduce一样精细,无法控制在map处理数据还是在reduce处理数据) 4.Hive和传统数据库对比 hive和mysql什么区别? 首先,hive不是数据库,它只是一个数据仓库建模的工具,是可以在海量数据中查询分析得到结果的平台,数据存储位置在HDFS上。 mysql是数据库,数据存储位置在本地磁盘上 5.Hive应用场景 (1)日志分析:大部分互联网公司使用hive进行日志分析,如百度、淘宝等。 (2)统计一个网站一个时间段内的pv,uv,SKU,SPU,SKC (3)多维度数据分析(数据仓库) (4)海量结构化数据离线分析 (5)构建数据仓库 二、Hive架构 1.图解: 元数据Metastore 元数据包括表名、表所属的数据库(默认是default)、表的拥有者、列/分区字段、表的类型(是否是 外部表)、表的数据所在目录等。 一般需要借助于其他的数据载体(数据库) 主要用于存放数据库的建表语句等信息 推荐使用Mysql数据库存放数据 Driver(sql语句是如何转化成MR任务的?) 元数据存储在数据库中,默认存在自带的derby数据库(单用户局限性)中,推荐使用Mysql进行存储。 1) 解析器(SQL Parser):将SQL字符串转换成抽象语法树AST(从3.x版本之后,转换成一些的stage),这一步一般都用第三方工具库完 成,比如ANTLR;对AST进行语法分析,比如表是否存在、字段是否存在、SQL语义是否有误。 2) 编译器(Physical Plan):将AST编译(从3.x版本之后,转换成一些的stage)生成逻辑执行计划。 3) 优化器(Query Optimizer):对逻辑执行计划进行优化。 4) 执行器(Execution):把逻辑执行计划转换成可以运行的物理计划。对于Hive来说,就是 MR/Spark/flink。 数据处理 Hive的数据存储在HDFS中,计算由MapReduce完成。HDFS和MapReduce是源码级别上的整合,两者结合最佳。解释器、编译器、优化器完成HQL查询语句从词法分析、语法分析、编译、优化以及查询计划的生成。 hive cli和beeline cli的区别

版本匹配指南:Numpy版本和Python版本的对应关系

版本匹配指南:Numpy版本和Python版本的对应关系 🌵文章目录🌵 🔍 一、Numpy版本和Python版本匹配的重要性📘 二、Numpy版本和Python版本的对应关系表🎯 三、如何选择合适的Numpy版本?💻 四、实践中的版本匹配问题🔧 五、解决版本匹配问题的工具和方法🌈 六、总结与展望 🔍 一、Numpy版本和Python版本匹配的重要性 在Python生态系统中,Numpy是一个非常重要的库,它为科学计算提供了大量的基础功能。然而,随着Python和Numpy的不断更新,版本之间的兼容性问题逐渐显现。选择合适的Numpy版本与Python版本相匹配,对于确保程序的稳定运行和避免潜在的问题至关重要。 不匹配的版本可能会导致各种问题,例如安装失败、运行时错误,甚至是性能下降。因此,在进行Python项目开发时,我们必须仔细考虑Numpy和Python的版本匹配问题,以确保项目的顺利进行。 📘 二、Numpy版本和Python版本的对应关系表 下面是一个简化的Numpy版本和Python版本的对应关系表,用于指导我们在不同Python版本下选择合适的Numpy版本: Numpy版本兼容的Python版本1.26.03.9-3.121.25.03.9-3.111.24.03.8-3.111.23.03.8-3.101.22.03.8-3.101.21.03.7-3.9 请注意,这只是一个简化的对应关系表,实际使用中还需要根据具体的项目需求和环境配置进行调整。此外,为了获取最新的版本信息,建议查阅Numpy和Python的官方文档或相关社区。 🎯 三、如何选择合适的Numpy版本? 选择合适的Numpy版本需要考虑多个因素,包括项目需求、社区活跃度、稳定性和性能等。 首先,项目需求是选择Numpy版本的首要因素。不同的项目可能对Numpy的功能和性能有不同的要求。因此,我们需要根据项目需求来确定所需的Numpy版本范围。 其次,社区活跃度也是一个重要的考虑因素。活跃的社区意味着更多的开发者参与、更快的错误修复和更频繁的功能更新。选择一个具有活跃社区的Numpy版本,有助于我们及时获取支持和解决问题。 此外,稳定性和性能也是选择Numpy版本时需要考虑的因素。稳定性高的版本通常意味着更少的错误和更好的兼容性,而性能优化的版本则可以提高程序的执行效率。 综合考虑以上因素,我们可以根据项目的实际情况选择合适的Numpy版本。如果需要更多的功能和性能优化,可以选择较新的版本;如果对稳定性要求较高,可以选择经过广泛验证的稳定版本。 💻 四、实践中的版本匹配问题 在实际开发中,我们可能会遇到一些版本匹配问题。例如,当我们尝试在一个较旧的Python环境中安装最新版本的Numpy时,可能会遇到安装失败的问题。这是因为较旧的Python版本可能不支持最新版本的Numpy。 为了解决这个问题,我们可以尝试以下几种方法: 升级Python版本:如果可能的话,升级Python版本到较新的版本,以便支持最新版本的Numpy。使用旧版本的Numpy:如果升级Python版本不可行,我们可以尝试安装与当前Python版本兼容的旧版本Numpy。创建虚拟环境:使用虚拟环境可以隔离不同项目的依赖关系,从而避免版本冲突。我们可以在虚拟环境中安装特定版本的Python和Numpy,以满足项目的需求。 🔧 五、解决版本匹配问题的工具和方法 在解决版本匹配问题时,我们可以使用一些工具和方法来简化操作和提高效率。 首先,可以使用包管理工具(如pip)来安装和管理Python包。pip可以帮助我们自动解决依赖关系,并确保安装的包与当前Python版本兼容。 其次,可以使用虚拟环境工具(如virtualenv或conda)来创建和管理多个Python环境。虚拟环境可以隔离不同项目的依赖关系,避免版本冲突,并方便我们在不同环境之间进行切换。 此外,还可以使用版本控制工具(如Git)来管理项目的依赖关系。通过将项目的依赖关系记录在版本控制系统中,我们可以方便地追踪和回滚依赖关系的变更,确保项目的稳定性。 🌈 六、总结与展望 选择合适的Numpy版本与Python版本相匹配是确保Python项目稳定运行的重要一环。通过了解Numpy和Python的对应关系、考虑项目需求、社区活跃度、稳定性和性能等因素,我们可以选择合适的版本组合。同时,使用工具和方法来解决版本匹配问题可以提高开发效率和项目质量。 随着Python和Numpy的不断更新和发展,未来的版本匹配问题可能会更加复杂。因此,我们需要保持关注官方文档和社区动态,及时了解和掌握最新的版本信息和最佳实践。 🤝 期待与你共同进步 🌱 亲爱的读者,非常感谢你每一次的停留和阅读!你的支持是我们前行的最大动力!🙏 🌐 在这茫茫网海中,有你的关注,我们深感荣幸。你的每一次点赞👍、收藏🌟、评论💬和关注💖,都像是明灯一样照亮我们前行的道路,给予我们无比的鼓舞和力量。🌟 📚 我们会继续努力,为你呈现更多精彩和有深度的内容。同时,我们非常欢迎你在评论区留下你的宝贵意见和建议,让我们共同进步,共同成长!💬 💪 无论你在编程的道路上遇到什么困难,都希望你能坚持下去,因为每一次的挫折都是通往成功的必经之路。我们期待与你一起书写编程的精彩篇章! 🎉 🌈 最后,再次感谢你的厚爱与支持!愿你在编程的道路上越走越远,收获满满的成就和喜悦! 关于Python学习指南 如果想要系统学习Python、Python问题咨询,或者考虑做一些工作以外的副业,都可以扫描二维码添加微信,围观朋友圈一起交流学习。 我们还为大家准备了Python资料和副业项目合集,感兴趣的小伙伴快来找我领取一起交流学习哦! 学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后给大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助! 包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、自动化办公等学习教程。带你从零基础系统性的学好Python! 👉Python所有方向的学习路线👈 Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取)

Stable Diffusion整合包 安装教程!轻松解压,即刻体验!

这个整合包由Bilibili上著名的“秋葉aaaki”大神制作,支持NVIDIA显卡全系列加速。它预装了众多常用插件,使用时无需频繁设置,解压即可轻松使用。此外,软件界面已完全汉化,提供便捷的中文操作体验。它还是开源免费,一键安装,永久使用的。(文末扫码可获取SD免费安装包) 🪟适合人群 - 零基础入门,没用过AI绘画的人 - 把原来整合包自己玩坏的人 - 不想动脑子的人 🪟电脑要求配置 - 操作系统:Windows10以后 - CPU:不做强制性要求 - 显卡:必须是Nvidia的独立显卡,显存最低4G,推荐20系以后A卡,核显只能用CPU跑 - 硬盘:推荐使用固态硬盘,提升模型加载速度 🪟下载启动 公众号回复【240221】即可获取下载链接,以下是文件说明: 🪟运行步骤 1、双击运行“启动器运行依赖-dotnet-6.0.11.exe”,如果系统已经存在这个环境,则会出现以下界面,请不要担心,说明系统已经存在运行整合包的环境了。 2、解压完成后,打开“sd-webui-aki-v4.6.1”文件夹;这就是这个整合包的根目录。记住这个地址,因为之后会频繁使用它。之后双击运行“A绘世启动器.exe”,会自动弹出窗口,请耐心等待,如果网络良好,这个过程可能只需十几秒。 3、进入软件后,点击“一键启动”,然后耐心等待,系统浏览器会自动打开网址:“http://127.0.0.1:7860/?__theme=dark” 🪟其他: - ControlNet 模型存放地址: \sd-webui-aki-v4.6.1\models\ControlNet - Stable-diffusion 模型存放地址: \sd-webui-aki-v4.6.1\models\Stable-diffusion - Lara 模型存放地址: \sd-webui-aki-v4.6.1\models\Lora 整合包包含了必要的Python和Git环境,预先配置了模型并添加了一些常用插件。用户可以随时删除整合包中的环境,这些环境是独立虚拟的,不会引起任何冲突。从理论上讲,整合包比自行部署更加稳定。AI绘画SD安装包、AI人工智能学习资料都已经打包好放在网盘中了,有需要的小伙伴文末扫码自行获取。 写在最后 AIGC技术的未来发展前景广阔,随着人工智能技术的不断发展,AIGC技术也将不断提高。未来,AIGC技术将在游戏和计算领域得到更广泛的应用,使游戏和计算系统具有更高效、更智能、更灵活的特性。同时,AIGC技术也将与人工智能技术紧密结合,在更多的领域得到广泛应用,对程序员来说影响至关重要。未来,AIGC技术将继续得到提高,同时也将与人工智能技术紧密结合,在更多的领域得到广泛应用。 感兴趣的小伙伴,赠送全套AIGC学习资料和安装工具,包含AI绘画、AI人工智能等前沿科技教程,模型插件,具体看下方。 一、AIGC所有方向的学习路线 AIGC所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。 二、AIGC必备工具 工具都帮大家整理好了,安装就可直接上手! 三、最新AIGC学习笔记 当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。 四、AIGC视频教程合集 观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。 五、实战案例 纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。 若有侵权,请联系删除

python | 大麦网抢票(移动端)

上篇文章写到了使用windows11打开安卓应用,那么使用python来抢大麦网票应该也是可以的吧。库使用的是pyautogui。 pyautogui 简单的了解了下,这个库就是Python的GUI自动化工具库,可以操作鼠标和键盘完成一系列动作,发现做测试的时候,不仅可以使用他来做功能测试,还可以做UI测试。 代码 import pyautogui import time time.sleep(3) # 立即购买 def buy(img): while True: # 查找有没有立即购买的按钮 buyBtn = pyautogui.locateOnScreen(img) print(buyBtn) if buyBtn is not None: pyautogui.click(buyBtn.left + buyBtn.width/2, buyBtn.top+buyBtn.height/2) break time.sleep(0.001) # 选择价格 def price(img): while True: price = pyautogui.locateOnScreen(img) print(price) if price is not None: pyautogui.click(price.left + price.width/2, price.top+price.height/2) break time.sleep(0.001) # 选择购买票数,一个不用这个函数,两票用一次,三票用两次 def add(img): addBtn = pyautogui.locateOnScreen(img) if addBtn is not None: # 点击一下,买两张 pyautogui.click(addBtn.left + addBtn.

教你用 Python 自制简单版《我的世界》

《我的世界 Minecraft》大家应该都听说过,但你有没有想过自己写一个这样的游戏呢?太难、太复杂了?也许吧,但是不试一试你怎么知道能不能成呢? 国外有位叫fogleman的开发者就用Python做了这样的一件事——自制《我的世界 Minecraft》,谁能想到,仅仅900行的代码,玩起来竟然还像模像样的: 接下来,我们就带你运行这个项目,并对这个开源的小游戏做一下简单的更改,让它变成“你的”世界。 1.运行及操作 在终端输入以下命令安装我们所需要的依赖模块: pip install pyglet 看到 Successfully installed xxx 则说明安装成功 git clone https://github.com/fogleman/Minecraft.git 运行这个项目非常简单,你只需要进入源代码文件夹输入以下命令: python main.py 即可成功运行该游戏项目,然后体验一下这个游戏: 移动 W: 前进S: 后退A: 往左D: 往右鼠标移动: 视角空格: 跳跃Tab: 切换到飞行模式 建筑 选择建造类型: 1: 砖块2: 草丛3: 沙丘 鼠标左键:去除建筑 鼠标右键:增加建筑 退出 ESC: 关闭窗口 来看看我的实画: 这个“实”字着实难画,宝典两个字被我略去了,因为我选的地儿右边空位不够。 2 .代码解读与自定义 接下来让我们看看这份游戏的代码,整个游戏代码只有902行,真优秀: 在上图红框的位置可以设定默认的窗口大小。不仅如此,作者还给了一些参数以供自定义速度、重力、跳跃高度等: # 每秒帧数 TICKS_PER_SEC = 60 # 砖块大小 SECTOR_SIZE = 16 # 行走速度与飞行速度 WALKING_SPEED = 5 FLYING_SPEED = 15 # 重力与跳跃高度 GRAVITY = 20.

Stable Diffusion 安装教程(附安装包) 【SD三种安装方式,Win+Mac一篇文章讲明白】

“Stable Diffusion的门槛过高、不会安装?没关系,这篇文章教会你如何安装!”(文末扫码可直接获取免费安装包~) Stable Diffusion的安装部署其实并不困难,只需简单点击几下,几分钟就能安装好,不管是windows还是苹果mac电脑,关于Stable Diffusion的各种安装方式,这篇文章一一来给大家讲明白。 Stable Diffusion最早开源出来只是一大堆源代码,而最具代表性的是AUTOMATIC1111大神把这些源代码做成了一个基于浏览器网页运行的程序,可以非常直观的调整、输入参数和拓展插件。 Stable Diffusion WebUI就是基于Python搭建的,所以需要在电脑上搭建Python才能让Stable Diffusion WebUI正常运行。 Stable Diffusion、还有它的各种插件都是在GitHub上开源的,通过Git可以把Stable Diffusion和各种插件安装和更新同步到自己电脑。 Win Mac都能安装,但Mac电脑和AMD显卡的电脑是用CPU渲染的,速度会比较慢,推荐搭配NVIDIA显卡的Win电脑使用。 优点:安装超级简单、方便,能一键启动,自动更新,自带部分模型和必要的插件,不需要安装python等前置软件 缺点:有可能出现或多或少的问题,集成的插件有可能是自己不需要的 市面上推荐的整合包主要有秋葉aaaki和独立研究员-星空的整合包,他们内核都是一样的,在使用上没有什么区别,只是封装的启动界面和集成的插件有一些区别。新手推荐安装秋葉老师的整合包,使用AMD显卡和集成显卡或者配置低一些的同学推荐安装星空老师的整合包。 文末扫码可获取秋葉2024年刚更新的整合包下载。 下载好整合包后,把整合包放置在硬盘空间充足的磁盘内,路径最好不要带中文路径的文件夹,把sd-webui-aki-v4.2解压出来,点击“启动器运行依赖-dotnet-6.0.11.exe”进行安装,进入sd-webui-aki-v4.2文件夹点击“A启动器”,然后点击一键启动,等待程序自动加载必要的启动项,就可以进入Stable Diffusion WebUI界面了。 AMD显卡的同学可以用秋叶的AMD专门整合包,具体看这里https://www.bilibili.com/read/cv26557731/ 优点:最纯正的Stable Diffusion WebUI程序,可以按需按需安装插件,一步步了解Stable Diffusion的部署和插件安装过程,对于每个部件和后续出现问题更容易找到根源和处理方法。 缺点:麻烦,要找到模型和插件一个个下载安装。 Python和Git安装包链接: https://pan.quark.cn/s/bb737f349f4c 建议安装3.10.6版本,这个是Stable Diffusion WebUI作者推荐安装版本,打开python.org/downloads/页面找到3.10.6版本下载,然后安装,安装没有什么难度,唯一需要注意的是安装时要勾选add python 3.10 to PATH。 Git官网:https://git-scm.com/download,找到64-bit Git windows Setup进行下载。安装一直下一步就可以。 接着安装Stable Diffusion WebUI,在硬盘空间充足,并且没有中文路径的文件夹导航栏,输入cmd,复制下面代码 git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git 回车,等待安装结束,就可以看到stable-diffusion-webui文件夹了,点击进入打开webui-user.bat,等待安装必要的启动项,然后就可以在浏览器打开127.0.0.1:7860进入Stable Diffusion WebUI界面了。 cmd+空格,搜索终端,打开终端,把这段代码粘贴到终端回车。 /bin/zsh -c “$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)” 一路有1选1,有Y选Y,需要输入开机密码,不会显示密码,直接输入然后回车即可。当询问core cask services可以回车跳过即可,安装完,在终端输入brew -v,能查询到版本就没有问题了。 安装python和git等部件,在终端输入下面代码: brew install cmake protobuf rust python@3.

lodash-es 工具库常用工具函数和案例详解,干货满满

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7 深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前! 因此收集整理了一份《2024年最新大数据全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。 既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化! 由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新 如果你需要这些资料,可以添加V获取:vip204888 (备注大数据) 正文 文章目录 一、概述 二、安装及使用 2.1 安装 2.2 浅拷贝 clone2.3 深拷贝 cloneDeep2.4 防抖 debounce2.5 节流 throttle2.6 打乱值 shuffle 三、Vue 动画案例 一、概述 Lodash中文文档 Lodash 是一个一致性、模块化、高性能的 JavaScript 实用工具库,算是从 Underscore 分离出来的超集。 Lodash 通过降低 array、number、objects、string 等等的使用难度从而让 JavaScript 变得更简单。Lodash 的模块化方法 非常适用于: 遍历 array、object 和 string对值进行操作和检测创建符合功能的函数 lodash 为了良好的浏览器兼容性,它使用了旧版 es5 的模块语法;而lodash-es则使用了 es6 的模块语法,这让 webpack 之类的打包工具可以对其进行tree shake (摇树优化)以删除未使用的代码来优化打包体积。所以在使用lodash库时,推荐通过lodash-es来进行导入操作。 注:tree-shaking(摇树优化)的作用:移除上下文中未引用的代码(dead code)。 数字化管理平台 Vue3+Vite+VueRouter+Pinia+Axios+ElementPlus Vue权限系统案例 个人博客 二、安装及使用 2.1 安装 安装 lodash-es npm i lodash-es 引入 lodash-es 中的函数