解压zip文件
把文件夹命名为 MySql
把 \path\phpStudy\PHPTutorial\MySql 重命名为 MySql-bak
复制上面5.7的 MySql 文件夹到 \path\phpStudy\PHPTutorial\ 下
以管理员身份进入到 \path\phpStudy\PHPTutorial\MySQL\bin\ 下
初始化 mysql: mysqld --initialize-insecure --user=mysql
**下面这两步 为 运行模式是系统服务时才需要执行 **
安装MySQL服务:
mysqld -install
启动MySQL: 默认密码是空
net start mysql
修改密码:
mysql>update mysql.user set authentication_string=password('你的密码填这里') where user='root' and Host ='localhost'
flush privileges
update类型的数据无法更新到目标库,通过追踪源码,发现同步源库的binlog日志中UPDATE类型的old参数为null,导致跳出更新程序,无法更新。
仔细检查了目标库的binlog是否开启,以及binlog的格式设置,以及binlog_row_image的设置,均满足官方要求。通过换服务器安装,换目标库等等的尝试发现都无果之后,走上了修改源码的道路。这里定位问题所在为源库MySQL的未知设置问题。
修改com.alibaba.otter.canal.client.adapter.rdb.service.RdbSyncService类中的update方法如下。
第一种方式对binlog中的old参数值不进行判断,直接对所有字段值进行update *** 作;
第二种方式兼容原有逻辑,如果有old参数值按照原有逻辑进行,如果没有按照上述第一种方式进行;
mysql有必要升级到第8版本。相较于之前的版本,mysql8增加多种新特性,同时也提高了软件各方面的速度。除此之外,mysql8还增加了开窗函数,可以让用户获得更好的使用体验。
MySQL由瑞典MySQLAB公司开发,是最流行的关系型数据库管理系统之一。在WEB应用方面,MySQL是最好的RDBMS应用软件之一。MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)