系统数据导出后,再使用工具导入备份时出现“MySQL server has gone away”错误,经过搜索发现,这可能是因为其中一些insert语句的大小超出了mysql目前设置的缓冲区大小。
解决办法:
修改my.ini
打开my.ini 找到[mysqld]这一行,下面添加
[mysqld]
#扩大缓冲区,具体数字可以根据自己需要设定
max_allowed_packet=16M
保存后,重启mysql。
此外,原本的数据库表名均为驼峰式的大小写,但是存入数据库后发现表名全部变为小写,大惑不解。搜索到一篇文章,证实,这是mysql5的一个做法之一。
原文:http://yuweijun.blogspot.com/2008/07/922-mysql5.html
引用
在MySQL中,数据库对应数据目录中的目录。数据库中的每个表至少对应数据库目录中的一个文件(也可能是多个,取决于存储引擎)。因此,所使用操作系统的大小写敏感性决定了数据库名和表名的大小写敏感性。这说明在大多数Unix中数据库名和表名对大小写敏感,而在Windows中对大小写不敏感。一个显著的例外情况是Mac OS X,它基于Unix但使用默认文件系统类型(HFS+),对大小写不敏感。然而,Mac OS X也支持UFS卷,该卷对大小写敏感,就像Unix一样。
注释:尽管在某些平台中数据库名和表名对大小写不敏感,不应在同一查询中使用不同的大小写来引用给定的数据库或表。下面的查询不会工作,因为它同时引用了表my_tables和as MY_tables:
mysql> SELECT * FROM my_table WHERE MY_TABLE.col=1;
列、索引、存储子程序和触发器名在任何平台上对大小写不敏感,列的别名也不敏感。
默认情况,表别名在Unix中对大小写敏感,但在Windows或Mac OS X中对大小写不敏感。下面的查询在Unix中不会工作,因为它同时引用了别名a和A:
mysql> SELECT col_name FROM tbl_name AS a
-> WHERE a.col_name = 1 OR A.col_name = 2;
然而,该查询在Windows中是可以的。要想避免出现差别,最好采用一致的转换,例如总是用小写创建并引用数据库名和表名。在大多数移植和使用中建议使用该转换。
在MySQL中如何在硬盘上保存和使用表名和数据库名由lower-case-table-names系统变量确定,可以在启动mysqld时设置。lower-case-table-names可以采用下面的任一值:
0:
使用CREATE TABLE或CREATE DATABASE语句指定的大写和小写在硬盘上保存表名和数据库名。名称比较对大小写敏感。在Unix系统中的默认设置即如此。请注意如果在大小写不敏感的文件系统上用--lower-case-table-names=0强制设为0,并且使用不同的大小写访问MyISAM表名,会导致索引破坏。
1:
表名在硬盘上以小写保存,名称比较对大小写敏感。MySQL将所有表名转换为小写以便存储和查找。该行为也适合数据库名和表的别名。该值为Windows和Mac OS X系统中的默认值。
2:
表名和数据库名在硬盘上使用CREATE TABLE或CREATE DATABASE语句指定的大小写进行保存,但MySQL将它们转换为小写以便查找。名称比较对大小写敏感。注释:只在对大小写不敏感的文件系统上适用! InnoDB表名以小写保存,例如lower-case-table-names=1。
在Windows和Mac OS X中,lower-case-table-names的 默认值是1。
我们的系统部署是在linux下的mysql4,而开发环境则是windows下mysql5,这2天做系统的升级,被这2个差异折腾得够呛,这边生成的表全部小写,而linux下则是大小写混杂(它区分大小写),结果导致数据的导入导出异常麻烦,导出的数据库目前虽然只有十几M,但是用文本编辑器手动的修改表名一样还是非常的痛苦,文本编辑器改动表名大小写卡得要死。
分享到:
相关推荐
- 升级过程中可能会遇到权限问题,确保新版本MySQL的服务账号具有足够的权限。 - 对于InnoDB表,需要注意在升级前后保持一致的数据文件格式,避免因格式不匹配导致的问题。 - 在完成升级后,进行全面的功能测试,...
- 升级过程中,如果遇到权限问题,可能需要使用`sudo`或者以root用户身份操作。 - 了解MySQL的配置文件`my.cnf`,在升级后可能需要根据新版本的要求进行调整。 - 如果服务器上有多个MySQL实例,需要分别处理每个实例...
综上所述,"Mysql57安装升级.zip"这个压缩包应该包含了安装和升级MySQL 5.7的详细指南,包括每个步骤的说明、可能遇到的问题及其解决方案。如果你在实际操作中遇到任何困难,可以参照这些资源,或者寻求社区和专业...
### MySQL 5.5 升级到 5.7 的步骤与注意事项 #### 背景介绍 在本文档中,我们将详细介绍如何将MySQL数据库从版本5.5.46升级到5.7.9...此外,还应关注升级过程中可能遇到的问题并及时解决,以确保升级工作的顺利进行。
MySQL是世界上最流行的开源关系型数据库管理系统之一,尤其在Linux环境下,其稳定性、高效性和灵活性深受开发者喜爱。在统信系统(UOS)这样的国产操作系统上,对于arm64架构的支持,使得MySQL可以在各种硬件平台上...
在监控升级过程中,错误日志会记录如启动时间、升级状态以及任何系统警告或错误,帮助管理员在遇到问题时快速响应。 总结来说,MySQL 8.0的自动升级简化了从旧版本到新版本的过渡,同时新的错误日志系统提高了故障...
本文将深入解析《2.0升级到2.0.2版本操作指南(MYSQL)》这一文档中的关键步骤与技术细节,为读者提供一个全面的升级流程指导,确保数据库系统的平稳过渡与功能提升。 #### 升级前准备与检查 在着手进行任何升级操作...
在 Linux 系统上安装 MySQL 时可能会遇到各种问题,本文将记录这些问题并提供解决方法。 安装 NTP 在安装 MySQL 之前,需要安装 NTP(Network Time Protocol),以确保系统时间同步。可以使用以下命令安装 NTP: ...
如果用户遇到 MySQL 的错误或问题,可以通过 MySQL 官方网站的错误报告系统来报告错误。 MySQL 标准遵守情况 MySQL 遵守标准 SQL 语法,并且提供了多种扩展语法。用户可以根据自己的需求选择合适的 SQL 语法。 ...
若遇到MySQL服务启动失败的问题,可以通过以下步骤尝试解决: - **查找错误日志** 查看错误日志文件,通常位于`/var/log/mysqld.log`或`/var/log/mysql/error.log`,这些日志文件可以帮助定位问题所在。 - **...
3. **备份现有MySQL**:在升级之前,强烈建议备份现有的MySQL服务器以及其数据目录,以防万一出现问题,可以恢复到原来的版本。这通常包括停止MySQL服务(`service mysql stop`)以及复制相关数据文件。 4. **下载...
若需要帮助或遇到使用问题,可以访问 MySQL 论坛与其他用户交流讨论。 --- ### MySQL 8.0.37 主要更新内容 MySQL 8.0.37 版本作为 8.0 系列中的一个更新版本,主要针对之前的版本进行了错误修复和性能优化,具体...
在【下载及使用说明.txt】中,可能会包含获取和运行这个系统的具体步骤,包括如何下载文件、如何解压、如何配置运行环境,以及可能遇到的问题和解决方法。 【查看文件解压密码(网址即为解压密码).url】:这是一个...
如果在安装或配置MySQL过程中遇到问题,可以在MySQL的官方论坛或者邮件列表中寻求帮助,与其他MySQL用户共同讨论解决。 以上是关于在CentOS系统下使用MySQL Yum仓库安装和配置MySQL的详细过程。尽管具体的步骤可能...
在CentOS 6.3系统中,从...为了更好地应对类似问题,建议在进行系统升级时,提前备份数据,了解升级流程,并准备好应对可能出现的各种错误。同时,定期关注官方更新和社区经验分享,以获取最新的升级方法和技术支持。
4.10 Perl 安装说明 4.10.1 在Unix操作系统上安装 Perl 4.10.2 在 Win32上安装 ActiveState Perl 4.10.3 在 Win32 上安装 MySQL Perl 分发 4.10.4 使用 Perl DBI/DBD接口遇到的问题 4.11 ...
如果遇到错误或问题,用户应按照文档中的指示报告,以帮助改善产品。 MySQL 5.7遵循一系列标准,但可能有对标准SQL的扩展和差异。文档详细解释了MySQL如何处理约束,这对于理解其行为模式很有帮助。此外,还列出了...