iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL8 批量修改字符集脚本
  • 809
分享到

MySQL8 批量修改字符集脚本

MySQL8批量修改字符集MySQL8修改字符集 2023-03-24 11:03:55 809人浏览 泡泡鱼
摘要

目录1. 批量修改库字符集2. 批量修改表字符集3. 批量修改列字符集从低版本迁移到Mysql 8后,可能由于字符集问题出现 Illegal mix of collations (utf8mb4_general_ci,I

从低版本迁移到Mysql 8后,可能由于字符集问题出现 Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8mb4_0900_ai_ci,IMPLICIT) 错误,此时要修改对象的字符集。

1. 批量修改库字符集

change_database_characset.sql

select concat('alter database ',schema_name,' default character set utf8mb4 collate utf8mb4_0900_ai_ci;') 
  from infORMation_schema.schemata 
 where schema_name not in ('sys','mysql','performance_schema','information_schema') 
   and lower(default_collation_name) in ('utf8mb4_general_ci','utf8_general_ci');

调用:

/home/mysql/mysql-8.0.16-linux-glibc2.12-x86_64/bin/mysql -uroot -h10.0.0.18 -P3306 -p70n6w+1XklMu -N < change_database_characset.sql > change_database_characset_result.sql
/home/mysql/mysql-8.0.16-linux-glibc2.12-x86_64/bin/mysql -uroot -h10.0.0.18 -P3306 -p70n6w+1XklMu -f < change_database_characset_result.sql > change_database_characset_result.out 2>&1

2. 批量修改表字符集

change_table_characset.sql

select concat('alter table ',table_schema,'.',table_name,' default character set utf8mb4 collate = utf8mb4_0900_ai_ci;') 
  from information_schema.tables where table_schema not in ('sys','mysql','performance_schema','information_schema') 
   and table_type='BASE TABLE' and lower(table_collation) in ('utf8mb4_general_ci','utf8_general_ci');

调用:

/home/mysql/mysql-8.0.16-linux-glibc2.12-x86_64/bin/mysql -uroot -h10.0.0.18 -P3306 -p70n6w+1XklMu -N < change_table_characset.sql > change_table_characset_result.sql
/home/mysql/mysql-8.0.16-linux-glibc2.12-x86_64/bin/mysql -uroot -h10.0.0.18 -P3306 -p70n6w+1XklMu -f < change_table_characset_result.sql > change_table_characset_result.out 2>&1

3. 批量修改列字符集

change_column_characset.sql

set group_concat_max_len=10240;
 
select concat(c1,c2,';') 
  from (select c1, group_concat(c2) c2
          from (select concat('alter table ',t1.table_schema,'.',t1.table_name) c1,concat(' modify ','`',t1.column_name,'` ',t1.data_type,
                              if (t1.data_type in ('varchar','char'),concat('(',t1.character_maximum_length,')'),''),
                              ' character set utf8mb4 collate utf8mb4_0900_ai_ci',if(t1.is_nullable='NO',' not null',' null'),' comment ','''',t1.column_comment,'''') c2
                  from information_schema.columns t1, information_schema.tables t2
                 where t1.table_schema=t2.table_schema and t1.table_name=t2.table_name and t2.table_type='BASE TABLE' 
                   and lower(t1.collation_name) in ('utf8mb4_general_ci','utf8_general_ci') and t1.table_schema not in ('sys','mysql','performance_schema','information_schema')) t1
         group by c1) t;

调用:

/home/mysql/mysql-8.0.16-linux-glibc2.12-x86_64/bin/mysql -uroot -h10.0.0.18 -P3306 -p70n6w+1XklMu -N < change_column_characset.sql > change_column_characset_result.sql
/home/mysql/mysql-8.0.16-linux-glibc2.12-x86_64/bin/mysql -uroot -h10.0.0.18 -P3306 -p70n6w+1XklMu -f < change_column_characset_result.sql > change_column_characset_result.out 2>&1

到此这篇关于MySQL8 批量修改字符集脚本的文章就介绍到这了,更多相关MySQL8批量修改字符集内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL8 批量修改字符集脚本

本文链接: https://www.lsjlt.com/news/201118.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL8 批量修改字符集脚本
    目录1. 批量修改库字符集2. 批量修改表字符集3. 批量修改列字符集从低版本迁移到mysql 8后,可能由于字符集问题出现 Illegal mix of collations (utf8mb4_general_ci,I...
    99+
    2023-03-24
    MySQL8批量修改字符集 MySQL8 修改字符集
  • MySQL8批量修改字符集脚本
    目录1. 批量修改库字符集2. 批量修改表字符集3. 批量修改列字符集从低版本迁移到MySQL 8后,可能由于字符集问题出现 Illegal mix of collations (u...
    99+
    2023-03-24
    MySQL8批量修改字符集 MySQL8 修改字符集
  • MySQL8批量修改字符集脚本怎么写
    这篇“MySQL8批量修改字符集脚本怎么写”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“M...
    99+
    2023-03-31
    mysql
  • mysql批量修改字符集的方法
    这篇文章主要介绍mysql批量修改字符集的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!mysql如何批量修改字符集的方法:首先需要利用语句,生成所有实际执行的语句;然后基于My...
    99+
    2024-04-02
  • 如何批量修改mysql表字符集
    1. 更改单张表的编码 ALTER TABLE YOUR_TABLE_NAME DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; 2....
    99+
    2023-09-05
    mysql 数据库
  • 怎么批量修改mysql表字符集
    怎么批量修改mysql表字符集?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!批量修改mysql表字符集的方法:首先查询数据...
    99+
    2024-04-02
  • expect脚本如何批量修改ssh配置
    这篇文章主要介绍“expect脚本如何批量修改ssh配置”,在日常操作中,相信很多人在expect脚本如何批量修改ssh配置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”expect脚本如何批量修改ssh配置...
    99+
    2023-06-09
  • Python实现批量修改xml文件的脚本
    今天分享一个我自己写的实用脚本,主要是将.xml文件进行批量的修改 首先,声明我并不是很了解.xml的相关知识,所以今天主要是以我遇到的问题来做个记录。 想要更多的了解xml,请看最...
    99+
    2024-04-02
  • 利用脚本批量修改h3C交换机super3
    因安全规则要求,必须定期修改交换机密码, 而交换机数量多,所以配置了一个脚本远程自动修改。脚本命令如下:# $language = "VBScript"# $interface = "1.0"' Connect to an SSH serv...
    99+
    2023-01-31
    交换机 批量 脚本
  • BAT脚本批量修改文件名的两种方法
    目录一,先进入想要修改文件名的文件夹中,使用命令:1、以示例文档为例进行说明2.双击1.bat来生成yuan.xls文件,如下图:二、直接通过BAT脚本实现通过BAT脚本批量修改文件...
    99+
    2024-04-02
  • mysql5.6如何修改字符集
    本文小编为大家详细介绍“mysql5.6如何修改字符集”,内容详细,步骤清晰,细节处理妥当,希望这篇“mysql5.6如何修改字符集”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。...
    99+
    2024-04-02
  • linux字符集如何修改
    这篇“linux字符集如何修改”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“linux字符集如何修改”文章吧。修改方法:1、...
    99+
    2023-06-29
  • navicat怎么修改字符集
    navicat中修改字符集的方法:1、打开navicat工具;2、连接数据库;3、选择需要修改字符集的数据表;4、右键打开设计表页面;5、最后通过底下“字符集”一栏进行修改字符集即可。具体操作步骤:打开navicat管理工具。点击左上角“连...
    99+
    2024-04-02
  • linux怎样修改字符集
    小编给大家分享一下linux怎样修改字符集,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!方法:1、利用“LANG=字符集”或者“export  LANG...
    99+
    2023-06-29
  • oracle字符集如何修改
    要修改Oracle字符集,可以按照以下步骤进行操作:1. 进入Oracle数据库服务器的命令行界面。2. 使用SYSDBA或者SYS...
    99+
    2023-09-23
    oracle
  • mysql如何修改字符集
    小编给大家分享一下mysql如何修改字符集,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、修改my.ini配置文件(mysql...
    99+
    2024-04-02
  • linux如何修改字符集
    linux如何修改字符集,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。修改字符集的方法:1、直接设置“export LANG=需要的字符集”;2、打开“/etc/sysconf...
    99+
    2023-06-22
  • sqlserver如何修改字符集
    在SQL Server中,可以使用以下步骤来修改字符集: 首先,连接到SQL Server Management Studio。...
    99+
    2024-04-09
    sqlserver
  • BAT脚本批量修改文件名的方法有哪些
    本文小编为大家详细介绍“BAT脚本批量修改文件名的方法有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“BAT脚本批量修改文件名的方法有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。通过BAT脚本批量修改...
    99+
    2023-06-30
  • oracle修改字符集的方法
    本篇内容主要讲解“oracle修改字符集的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“oracle修改字符集的方法”吧! se...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作