zoukankan      html  css  js  c++  java
  • mysql案例~非常规操作汇总

    一 简介:此文汇总mysql不常见的数据库的操作
    二 mysql表修改最大自增ID
    目的: 修复canal相关问题
    语法: alter table a AUTO_INCREMENT=num;
    执行速度: 自增ID的最大值都在内存中,所以更改是秒级,不用担心速度
    三 更改分区表联合主键操作
    目的: 给分区表联合主键增加自增属性
    语法: alter table test1 change column id id int auto_increment;
    注意: 联合主键添加自增属性,自增列必须在第一位,否则会有问题

    四 更改mysql字符集
    目的: 给原来的老数据库将默认字符集更新成utf9
    语法: set global character_set_server=utf8 可在线修改
    注意: 修改字符集对于数据库本身可能造成问题,一定要进行测试

    五 mysql类型互相转化问题

    目的:blob类型转换为char类型 oracle 迁移数据,oracle的blob存储到mysql的blob类型,然后再进行char转化

    语法 select CAST(content AS CHAR(10000) CHARACTER SET utf8) from t_bonus_code_log

    注意: 有可能blob输出会有乱码,可以调整字符集试试

    六 mysql 错误日志记录

        5.6   log_warnings 默认为1  

        log_warnings 为0, 表示不记录告警信息。
        log_warnings 为1, 表示告警信息写入错误日志。
        log_warnings 大于1, 表示各类告警信息,例如有关网络故障的信息和重新连接信息写入错误日志。

        5.7  log_error_verbosity 默认值看版本号 可能为1 或者 2

         log_error_verbosity 为 0,表示 不记录告警信息

         log_error_verbosity 为1 表示记录 错误日志

         log_error_verbosity  为2  表示记录错误日志和告警日志

         log_error_verbosity  为 3  表示记录错误日志 告警日志和note日志

          大家可以根据实际场景进行灵活调整,另外5.7的这个参数将在8.0被移除

    七  mysql 大小写相关

          表级别: mysql默认是区分大小写的,所针对的是表名 参数为 lower_case_table_names,请注意该参数为只读参数,需要重启数据库才能进行修改生效

         数据级别: mysql查询语句查询数据本身是不区分大小写的,如果需要区分大小写

                       1 在条件前面加上binary参数 例如  binary aa='A';

                        2 建表时在指定列前加上binary参数

    待补充

  • 相关阅读:
    避免scrollview内部控件输入时被键盘遮挡,监听键盘弹起,配合做滚动
    红包功能的开发总结
    App启动时间分析
    第三方动画库 Lottie嵌入记录
    加入一个新的团队需要做什么
    OC 面向对象的特性
    为什么说OC是运行时语言?什么是动态类型、动态绑定、动态加载?
    adb pull 和 adb push
    《重构:改善既有代码的设计》重构的方法整理
    《重构:改善既有代码的设计》(二) 代码的坏味道
  • 原文地址:https://www.cnblogs.com/danhuangpai/p/10407164.html
Copyright © 2011-2022 走看看