percona 5.6升级到5.7相关error及解决方法
今早,把开发环境的mysql升级到了5.7.15,5.6数据导入后,启动一切正常,检查.err日志,发现有如下异常:
2016-10-31T00:29:33.187073Z 0 [Warning] System table 'time_zone_leap_second' is expected to be transactional.
2016-10-31T00:29:33.187093Z 0 [Warning] System table 'time_zone_name' is expected to be transactional.
2016-10-31T00:29:33.187097Z 0 [Warning] System table 'time_zone' is expected to be transactional.
2016-10-31T00:29:33.187101Z 0 [Warning] System table 'time_zone_transition_type' is expected to be transactional.
2016-10-31T00:29:33.187104Z 0 [Warning] System table 'time_zone_transition' is expected to be transactional.
2016-10-31T00:29:33.187690Z 0 [Warning] System table 'servers' is expected to be transactional.
2016-10-31T00:29:33.188536Z 0 [Warning] Info table is not ready to be used. Table 'mysql.slave_master_info' cannot be opened.
2016-10-31T00:29:33.188827Z 0 [Warning] Info table is not ready to be used. Table 'mysql.slave_relay_log_info' cannot be opened.
2016-10-31T00:29:33.195026Z 0 [ERROR] Incorrect definition of table mysql.db: expected column 'User' at position 2 to have type char(32), found type char(16).
2016-10-31T00:29:33.195055Z 0 [ERROR] mysql.user has no `Event_priv` column at position 28
2016-10-31T00:29:33.195236Z 0 [ERROR] Event Scheduler: An error occurred when initializing system tables. Disabling the Event Scheduler.
执行mysql_update进行升级即可。
相关5.7不兼容的mysql参数包括如下:
max_statement_time=300000,由mysql自身参数max_execution_time控制。
innodb_log_block_size=4096,由mysql自身参数innodb_log_write_ahead_size控制。
还有一个问题是,通过service mysql start启动后,service mysql stop无法删除${hostname}.pid文件,看support-files提供的mysql.server文件又是有rm *.pid命令的,事后得再看下哪里的问题。
另外,其他一些常用变化如下:
1、在mysql 5.6中,开始innodb监控的方法(这在mysqld hang,mysql客户端本身就无法登录进去的时候是很有用的)如下:
use mysql;
CREATE TABLE innodb_monitor (a INT) ENGINE=INNODB;
在mysql 5.7下,调整为如下:
set GLOBAL innodb_status_output=ON;
2、正规的创建用户、修改密码方式调整为接近oracle的语法:
5.6:
grant all on *.* to root@'172.18.%' identified by "password";
set password for root@'172.18.%'=password('password');
5.7:
create user root@'172.18.%' identified by 'ABC123!@#';
alter user root@'172.18.%' identified by 'ABC123!@#'; --用户必须已经存在
3、datadir下新增的文件及其含义如下:
ib_buffer_pool
Even though a buffer pool can be many gigabytes in size, the buffer pool data that InnoDB
saves to disk is tiny by comparison. Only tablespace IDs and page IDs necessary to locate the appropriate pages are saved to disk. This information is derived from the INNODB_BUFFER_PAGE_LRU
INFORMATION_SCHEMA
table. By default, tablespace ID and page ID data is saved in a file named ib_buffer_pool
, which is saved to the InnoDB
data directory. The file name and location can be modified using the innodb_buffer_pool_filename
configuration parameter.
ibtmp1
In 5.7, InnoDB added a separate tablespace for all non-compressed InnoDB temporary tables. This new tablespace is named ibtmp1 and is located in the datadir by default.
“The new tablespace is always recreated on server startup. … A newly added configuration file option, innodb_temp_data_file_path, allows for a user-defined temporary data file path. For related information, see InnoDB Temporary Table Undo Logs.”
mysqld_safe.pid
In MySQL 5.7.2 and later, mysqld_safe creates a PID file named mysqld_safe.pid
in the MySQL data directory when starting up
xb_doublewrite
percona扩展,Regardless of innodb_flush_method setting, the parallel doublewrite file is opened with O_DIRECT flag to remove OS caching, then its access is further governed by the exact value set: if it’s set to O_DSYNC, the parallel doublewrite is opened with O_SYNC flag too. Further, if it’s one of O_DSYNC, O_DIRECT_NO_FSYNC, or ALL_O_DIRECT, then the doublewrite file is not flushed after a batch of writes to it is completed.由参数innodb_parallel_doublewrite_path控制其目录,It defaults to xb_doublewrite in the data directory.
sys:
performance_schema之上的视图库。
percona 5.6升级到5.7相关error及解决方法的更多相关文章
- [转]Oracle 10g及pro*c相关问题及解决方法(转)
Oracle 10g及pro*c相关问题及解决方法 2008年08月21日 星期四 上午 11:21 最近一直在进行ORACLE 10g和PRO*C的学习. 其中遇到了不少的问题: 现列于此,已备他用 ...
- db2相关问题及解决方法
DB2相关问题及解决方法: 一.DB2中的代码页(codepage)问题. DB2备份时发生过代码页错误的问题,修改代码页后备份正常,但创建数据库时又发生代码页的错误.这是DB2服务器使用的代码页配置 ...
- android6.0SDK 删除HttpClient的相关类的解决方法
本文转载自博客:http://blog.csdn.net/yangqingqo/article/details/48214865 android6.0SDK中删除HttpClient的相关类的解决方法 ...
- MVC4升级MVC5导致原项目出错的解决方法
原文:MVC4升级MVC5导致原项目出错的解决方法 出现安全透明方法"WebMatrix.WebData.PreApplicationStartCode.Start()"尝试访问安 ...
- Win7升级Win10系统提示错误0x80070057的解决方法
Win7系统用户在通过Windows Update来升级Win10系统时,有时会出现0x80070057的错误代码从而导致无法继续升级.下面好系统重装助手就来告诉大家Win7升级Win10系统出现0x ...
- 总结关于Ubuntu 安装 Docker 配置相关问题及解决方法
总结关于Ubuntu 安装 Docker 配置相关问题及解决方法 Tomcat 示例 软件镜像(xx安装程序)----运行镜像----产生一个容器(正在运行的软件,运行的xx): 步骤: 1.搜索镜像 ...
- android 6.0 SDK中删除HttpClient的相关类的解决方法
一.出现的情况 在eclipse或 android studio开发, 设置android SDK的编译版本为23时,且使用了httpClient相关类的库项目:如android-async-http ...
- QT4项目升级到QT5遇到的问题和解决方法
QT4升级到QT5改动: PC部分: [改QTDIR变量] 在工程根目录下找到.user文件, 如InnoTabPlugin.vcxproj.user 修改指向你的QT5根目录: <Proper ...
- linux下,matplotlib遇到的相关问题以及解决方法
1.在linux下运行matplotlib程序时,matplotlib的安装. 根据不同的linux系统继续相关安装: Debian / Ubuntu : sudo apt-get install p ...
随机推荐
- 做最好的日期控件,My97 DatePicker 4.8 Beta4
4.8更新的内容 [新增]preload预载选项 [新增]时分秒选择菜单的定制功能,详见hmsMenuCfg属性[beta4] [新增]$dp.unbind函数,允许用户手动接触日期控件绑定[beta ...
- [转载]IE678兼容性前缀区分
符合一贯简单的风格,只需记住两个符号 _ 和 * 看例子: #main { background:black; *background:red; _background:blue; } 第一句会被所有 ...
- 并行编程多线程之Parallel
1.简介 随着多核时代的到来,并行开发越来越展示出它的强大威力!使用并行程序,充分的利用系统资源,提高程序的性能.在.net 4.0中,微软给我们提供了一个新的命名空间:System.Threadin ...
- Unity3d插件汇总
Unity3d 中的svn插件 插件下载地址:http://www.dehome.net/down/viewfile.php?file_id=53
- POJ 1363 Rails
Rails Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 21728 Accepted: 8703 Descriptio ...
- 那些年我们赚过的外快(POS(移动支付)接口开发)
老规矩上前戏了.在我写博文"那些年我们赚过的外快"前后算起来大大小小也接了些私活,这次是因为好久没写博客了,趁热分享一下.最近回了离老家近的二线城市成都工作,收入那是下降很多啊,刚 ...
- Part 1: Running Oracle E-Business Suite on Oracle Cloud
You can now run Oracle E-Business Suite on Oracle Cloud. EBS customers can take advantage of rapid ...
- Codeforces Beta Round #13 C. Sequence (DP)
题目大意 给一个数列,长度不超过 5000,每次可以将其中的一个数加 1 或者减 1,问,最少需要多少次操作,才能使得这个数列单调不降 数列中每个数为 -109-109 中的一个数 做法分析 先这样考 ...
- 64bit ubuntu 安装32bit的软件
在64bit的系统上安装32bit的软件时,会提示: file not found or no such file. 此时只需要安装 sudo apt-get install libc6-dev-i3 ...
- Nginx+Keepalived实现站点高可用
http://seanlook.com/2015/05/18/nginx-keepalived-ha/ http://blog.csdn.net/conquer0715/article/details ...