前段时间不知为何,脑子一热把数据库升级成了8.0版本,但无奈服务器内存太小承受不来,于是打算再降回5.7。本以为会花费很久时间,尝试之后发现仅用了一两个小时就搞定了,时间主要用在对数据的处理环节。对于数据库的安装、卸载本身不做详述,主要详细说明一下数据的处理、转移过程。第一步:数据备份有宝塔面板的,可以直接使用面板的批量备份功能:没有宝塔面板,用命令行备份成SQL格式的文件即可。mysqldump -u 用户名 -p 数据库名 > 文件名.sql 第二步:数据处理首次检索首先检索了一下网上给出的解决方案,大概是说:需要将8.0中专属的内容替换为5.7中的内容,包括: utf8mb4_0900_ai_ci 替换为 utf8_general_ci utf8_croatian_ci替换为 utf8_general_ci utf8mb4_general_ci替换为utf8_general_ci utf8mb4 替换为 utf8 甚至有人为了方便,用下面的语句直接删掉了 AUTO_INCREMENT= 后面的内容:sed 's/AUTO_INCREMENT=[0-9]*\b
昨天,国内昆仑万维公司推出了“天工AI搜索”。这也是在继百度AI搜索之后,国内厂商推出的一款新产品。刚好今天要处理一个换算的问题,所以找了几个AI对比了一下他们计算的准确度。真是,不测不知道......抛给他们的问题是:2667788795字节是多少兆?先来看国外几款AI的回复:ChatGPT请先记住这个标准答案,下面的表现,很精彩!微软BING AI担心我描述的单位不准确,我又重新问了它一遍...Google Bard你跟bing是一伙的吧?claude难道,是我的计算器出错了?跟ChatGPT比起来,真的是一个能打的都没有.....来看看国内几家AI的表现吧!百度文心一言emmm....讯飞星火emmm +1天工昨天新发布的天工AI搜索,还是你来压个轴吧路漫漫其修远,期待他们的进步!加油!
7月4号,网易的有道云笔记开始对登录设备数进行限制,每个账号最多只能保持两台设备同时在线。还记得一开始,我在纠结 有道云笔记 or 印象笔记 的时候,就是看中了它的不限设备数量,多端同步功能。这.....明摆着是圈钱撵人的节奏。笔记软件的选择多方搜寻,终于找到了可以替代有道云和印象笔记的软件——notion和obsidian。下载试用了一段时间后,开始慢慢发现他们的区别:notion 文档存储在云端,支持自动多端同步; 开箱即用,产品界面对所有人群都很友好; 对于数据表类型的内容,使用notion进行记录是再合适不过的了; 可以一键生成漂亮的网页; 不过它在国内的服务不太稳定,有时候需要科学上网的支持。 obsidian 所有内容都存储在本地,完全不必担心隐私被泄露; 使用markdown作为写作语言,编程爱好者狂喜; 支持双链笔记(双向链接)、关系图谱,检索效率很高; 支持自定义主题和css样式,搭配生态丰富的各类插件,DIY随心所欲; 官方的网页发布和同步功能是收费的。好在有第三方插件可以解决,支持多设备同步。 其实,形象一点来说,obsid
在一个网页中,[[前端]]与[[数据库]]都设置了相同的长度限制。但在实际填写表单时,当我输入了大量回车符时,数据库往往会报错而前端不会拦截。因此判断是字符超长导致的错误。分析过程研究了一下回车符在java前端和数据库各自所占的长度:先确认数据库和页面的编码都是utf-8类型。首先,我在viewNotice字段中输入“一二三四五六七八”这几个字符,此时在网页控制台里输入:document.getElementsByName('viewNotice')[0].value.length 得到的值为8。再进入数据库,输入以下查询语句SELECT length( VIEW_NOTICE ) AS '字符串(字节)长度', CHARACTER_LENGTH( VIEW_NOTICE ) AS '字符长度' FROM `VR_LABORATORY_INFO` WHERE id = XXX 可以看到其字符长度也是8。此时前端和数据库的字符长度都是一致的。然后再往字符中加入一个回车,再重复执行上述两个命令,得到的结果分别是9(前端)和10(数据库)。结论 在前端中,一个回车符会被视为1个字
一、描述: Mysql中的FOREIGN_KEY_CHECKS是用来启动和关闭外键约束的方法。二、错误: 在MySQL中删除一张表、一条数据,或者修改外键关系的时候,提示以下错误:[Err] 1451 -Cannot delete or update a parent row: a foreign key constraint fails (...)三、原因: 这是因为MySQL中设置了foreign key关联,造成无法更新或删除数据。四、解决方法: 可以通过设置FOREIGN_KEY_CHECKS避免这种情况。 执行SET FOREIGN_KEY_CHECKS=0;禁用外键约束。删除数据后可以在开启外键约束:SET FOREIGN_KEY_CHECKS=1;比如:SET FOREIGN_KEY_CHECKS = 0; -- 执行SQL语句 xxxx SET FOREIGN_KEY_CHECKS = 1;五、相关命令 查看当前FOREIGN_KEY_CHECKS的值可用如下命令:SELECT @@FOREIGN_KEY_CHECKS;文章转
趁着周末,将网站的php版本升级到了8.1,但是由于wordpress插件都比较陈旧,没有及时更新。所以出现了不少的错误。通过查阅网络资料,结合实际情况,列出遇到的如下三种情况。1、Fatal error: Uncaught Error: Call to undefined function create_function()由于在wordpress中,一些插件、主题使用了create_function()函数。这个函数在 PHP 7.2 版本中就已经被废弃并且在 PHP 8.0 中被移除。你可以使用匿名函数来代替 create_function()。例如,如果你原来的代码是这样的:$myFunction = create_function('$arg1, $arg2', 'return $arg1 + $arg2;'); $result = $myFunction(1, 2); 可以将其修改为:$myFunction = function ($arg1, $arg2) { return $arg1 + $arg2; }; $result = $myFunction(1, 2
近期把服务器的php版本从7.4升级到了8.1,网站响应速度终于快了那么一丢丢(可能是心理作用吧)。但因为php8的语法要求更加严格,所以升级过程中,在多个站点里,发现了N多报错。1、Warning: Undefined array key "xxxxxxx" in ....这个错误是我在升级过程中遇到的最多的错误之一。如果你的代码中使用了未定义的数组键值,那么会抛出 Undefined array key 错误。这是因为在 PHP 8 中,增加了对未定义的数组键值的严格检查,所以如果访问一个未定义的数组键值,PHP 会抛出一个警告或致命错误。这个错误通常会在使用数组时出现,例如:$array = []; echo $array['key']; //这里的键'key'就是一个未被定义的key出现这个错误的解决方法是在访问数组元素之前检查它是否已经定义。可以使用 isset() 函数或 Null 合并运算符(??)来避免该错误。例如,将下面的代码:if ($dami_meta['std'] != '') { echo '<img src="'.$da
前几天写过一篇文章《chevereto图床从Chevereto-Free升级到v4.0版本》,但升级后发现4.0免费版本的限制实在是太多了,就连logo都没办法自定义。要么降级,要么就找开心版作为替代。但是在保留原来数据的前提下,安装完开心版v4.0.7之后,陆续发现了多处报错。包括: undefined array key "jpeg"(原因是:我之前上传过jpeg图片,但是开心版4.0.7的代码似乎并不支持jpeg格式) 列表页面显示不出图片(发现前端报错:cannot read properties of undefined (reading 'length') site:chevereto.com) 提示401权限错误(出现了账户无法登录、登录后不能重建统计信息的现象) 这些问题让我一度想放弃,甚至想到直接弃掉chevereto换用其他图床程序。几天之后忽然产生了一个想法,既然用老数据不能直接升级,为啥不新安装一下呢。如果没问题的话,再把老数据迁移过来不就ok了!于是,新建文件夹、二级域名、数据库,设置伪静态,按照正常流程安装4.0.7开心版之后,总算迎来了好消息,
肥牛
半路出家的产品圈怪蜀黍