我可以在 MySQL 中存储图像吗?

2024-04-29

可能的重复:
MySQL 中的图像 https://stackoverflow.com/questions/1665730/images-in-mysql
在 MySQL 中存储图像 https://stackoverflow.com/questions/3014578/storing-images-in-mysql

我正在尝试开发一个网站,用户可以在其中上传图像作为注册的一部分。我希望每个图像都应该有一个用 PHP 创建的拇指(这并不困难)。我想将拇指(因为它们非常小)保存在数据库中,并且我使用 MySQL。 (我不想将拇指保存为驱动器上的物理文件。)
MySQL 是否允许保存和检索图像数据?我该如何操作?如果它不支持图像数据,有没有免费的数据库可以支持?如果可以提供链接,我将很高兴。
Thanks.


是的,您可以将图像存储在数据库中,但我认为这是不可取的,而且这不是一般做法。

一般做法是将图像存储在文件系统上的目录中,并将对图像的引用存储在数据库中。例如图像的路径、图像名称等。或者,您甚至可以将图像存储在内容交付网络 (CDN) 或跨越大片物理区域的众多主机上,并存储引用以访问数据库中的这些资源。

图像可能会变得很大,超过 1MB。因此,如果数据库和 Web 服务器位于不同的主机上,则将图像存储在数据库中可能会给数据库以及数据库和 Web 服务器之间的网络带来不必要的负载。

我曾在初创公司、中型公司和拥有超过 40 万员工的大型科技公司工作过。在我 13 年的专业经验中,我从未见过有人将图像存储在数据库中。我这样说是为了支持这种说法,这是一种不常见的做法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我可以在 MySQL 中存储图像吗? 的相关文章

随机推荐

  • 使用CSS在矩形上画圈[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想设计一个类似于下图的形状 圆形和矩形之间的效果 我知道圆形是用设计的边界半径类似矩形的形状设计有一些具有风格的无序列表显示 块 但
  • 使用 Android 将文件上传到 Django Web 服务

    我正在开发一个与 Django 后端交互的 Android 应用程序 我已经使用 mod wsgi 部署了 Web 服务 并且有许多 Web 服务调用可以工作并且已经过测试 所以我知道一切都应该工作 所有其他呼叫都工作正常 这是我在Andr
  • 单击单选按钮时事件触发的顺序是什么?

    我知道这在浏览器之间是不同的 例如如果我将一个函数附加到单选按钮的 onclick 和 onchange 事件 然后单击它 Chrome 会触发 onchange 然后触发 onclick 而 Firefox 则会执行相反的操作 是否有任何
  • 如何对第 9 个反向引用之后的正则表达式进行分组?

    好的 所以我尝试在记事本 中对第9个反向引用进行分组 维基百科说我可以使用组命名来跳过第 9 个参考 但是 我似乎无法获得正确的语法来进行匹配 为了简单起见 我一开始只设置了两组 样本数据 1000 1000 Regex a 0 9 0 9
  • 将 SearchView 阈值设置为零

    我在用SearchView在android中 我将适配器设置为搜索视图 但建议弹出框在一个字符后显示 因为我将阈值设置为1 它不接受小于1的数字 如何将阈值设置为零 请喜欢 Google 因为您可能知道 Google Play 的应用程序没
  • 除了内存管理之外,QObject 的父对象还用于什么?

    我知道 当一个QObject http doc qt io qt 5 qobject html被摧毁了 它也摧毁了它所有的孩子 但是 在我最近的所有 Qt 代码中 我总是声明任何类的成员 例如 QMainWindow https doc q
  • R 中卡方的事后测试

    我有一张看起来像这样的桌子 gt dput theft loc structure c 13704L 14059L 14263L 14450L 14057L 15503L 14230L 16758L 15289L 15499L 16066L
  • 在 Javascript 中维护数组顺序

    我是 JavaScript 新手 在使用数组时遇到问题 我希望数组按照我显式编写的方式排序 而不是 JavaScript 决定它想要的方式 如果我们有一个数组 var array 0 zero 4 four 2 two 当我选择在控制台中显
  • 在 Rust 中,我用什么来与多个线程和一个 writer 共享一个对象?

    当对象有时可能由一个所有者写入时 在多个线程之间共享公共对象的正确方法是什么 我尝试创建一个ConfigurationTrait 对象具有多种获取和设置配置键的方法 我想将其传递给可以读取配置项的其他线程 如果每个人都能写和读 那就加分了
  • 与黄金链接器链接的二进制文件运行速度更快吗?

    使用 GEANT4 大型 Monte Carlo C 模拟框架 大量共享库 运行模拟代码 使用黄金链接器和基于标准 BFD 的链接器编译并链接 GEANT 和我的应用程序 看起来黄金跑得更快一点 1 47 vs 1 51 有人可以阐明造成差
  • Xcode9:修复范围内的所有内容始终处于禁用状态

    Xcode9 编辑器 修复范围内的所有内容始终处于禁用状态 我怎样才能启用它 在新的 Xcode 版本 9 2 9C40b 中进行了更新 效果非常好
  • 让 `npm install --save` 添加严格版本到 package.json

    当你跑步时npm install save somepackage 它通常会在 package json 中添加这样的内容 dependencies somepackage 2 1 0 因为版本前面带有插入符号 这意味着如果您稍后运行npm
  • 如何在knockout视图模型点击事件中访问$parent或$parents[]?

    我遇到了一种情况 我想通知祖父母或 parents 1 子视图模型中发生的点击事件 所以基本上我希望能够做到这一点 self parents 1 actionTaken 我认为这不起作用 因为绑定上下文与 viewModel 但我想听听是否
  • 是否可以对更高种类类型的类实例强制执行类型约束?

    我有一个这样定义的类型 newtype PrimeSet a P Integer deriving Eq 我还定义了一个将素数集转换为列表的函数 假设它的类型参数是Integral toList Integral a gt PrimeSet
  • JAXB 和 complexType 与其元素之一共享名称会生成不正确的代码

    我有这个 xsd 它有点糟糕 但我必须使用它来避免更改我正在编写的 servlet 的接口 请求 响应接口的 xsd 包含以下行
  • C 预处理器字符串化怪异

    我正在定义一个宏 该宏的计算结果为常量字符串 保存文件名和行号 用于记录目的 它工作正常 但我只是不明白为什么需要 2 个额外的宏 STRINGIFY and TOSTRING 当直觉简单地表明 FILE LINE include
  • 在 iOS 上的 PhoneGap 或 Cleaver (Cordova) 中加载远程 html

    我在我的本机 iOS 6 应用程序中使用 Cordova 2 4 组件 Cleaver 和嵌入式视图 到目前为止 我已经成功创建了项目结构 链接了 Cordova 库并设置了 Hello World 应用程序 该应用程序确实可以提供 设备就
  • 使用awk对字段进行排序和排列

    我现在正在尝试学习 awk 我想做一项特定的任务 我的问题与之前发布的问题范围相似 使用 awk 将列转置为行 https stackoverflow com questions 13634816 using awk to transpos
  • 如何将多个 .txt 文件读入 R? [复制]

    这个问题在这里已经有答案了 我正在使用 R 来可视化一些数据 所有这些数据都是 txt 格式 一个目录中有几百个文件 我想一次性将其全部加载到一个表中 有什么帮助吗 EDIT 列出文件不是问题 但我在从列表到内容的过程中遇到了困难 我已经尝
  • 我可以在 MySQL 中存储图像吗?

    这个问题在这里已经有答案了 可能的重复 MySQL 中的图像 https stackoverflow com questions 1665730 images in mysql 在 MySQL 中存储图像 https stackoverfl