Docker Centos 7.X部署Mysql并修改编码

安装Docker

https://blog.csdn.net/qq_35349982/article/details/103216194

安装Tomcat

https://blog.csdn.net/qq_35349982/article/details/103217925

1.拉取镜像

docker pull centos/mysql-57-centos7

2.启动容器设置密码

docker run -di --name=user_mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=Gas123. centos/mysql-57-centos7

3.设置数据库的编码问题 修改为utf-8

SET NAMES 'utf8';
set charset_set_server=utf8

set character_set_database=utf8mb4
set character_set_server=utf8mb4

SET NAMES ‘utf8’;它相当于下面的三句指令:
SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = utf8;

4.查看数据库的编码集

show variables like '%character%';

在这里插入图片描述
alter table tablename convert to character set utf8;

5.使用存储过程修改所有表的编码()

CREATE PROCEDURE `pr_convert_dbtab_utf8`(IN dbName varchar(100))
 
BEGIN
 
    declare stop int default 0;
 
    declare tabCount int default 0;
 
    declare strSql varchar(1000);
 
    declare name varchar(100);
 
    declare cur CURSOR FOR select table_name from information_schema.tables where table_schema=dbName;
 
    declare CONTINUE HANDLER FOR SQLSTATE '02000' SET stop = null;
 
    OPEN cur;
 
    FETCH cur INTO name;
 
    WHILE ( stop is not null) DO
 
        set tabCount=tabCount+1;
 
        set strSql = concat('alter table `',name,'` convert to character set utf8');
 
        set @sql1 = strSql;
 
        prepare stmt_p from @sql1;
 
        execute stmt_p;
 
        FETCH cur INTO name;
 
    END WHILE;
 
    CLOSE cur;
 
    SELECT concat('table: ', tabCount);
 
END;

在这里插入图片描述

6.运行函数,修改所有表的编码

call pr_convert_dbtab_utf8('xianbao');

7.修改表的字段的编码(单条命令,参考)

alter table `tablename` convert to character set utf8; 

它可以修改一张表的所有字段的编码格式

8.Java的配置文件

spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://ip地址/xianbao?useUnicode=true&useSSL=false&&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=gaoyuan123.
#druid
spring.datasource.initial-size=1
spring.datasource.max-active=20
spring.datasource.max-idle=30
spring.datasource.min-idle=5
spring.datasource.max-wait=60000
spring.datasource.time-between-eviction-runs-millis=60000
spring.datasource.min-evictable-idle-time-millis=300000
spring.datasource.test-while-idle=true
spring.datasource.test-on-borrow=false
spring.datasource.test-on-return=false
spring.datasource.pool-prepared-statements=false
spring.datasource.max-open-prepared-statements=20
spring.datasource.filters=stat

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值