centos8安装mysql5.6,mysql5.5,yum切换mysql版本安装

centos8安装mysql5.6,mysql5.5,yum切换mysql版本安装,第1张

首先选择正确的云yum源

MYSQL的yum源在官网

以下以centos7和centos8为例

下载源

安装源 (这个源里面有8.0和5.7,两个版本等下会增加5.6和5.5)

到源地址下进行修改源文件进行版本增加

查看输出

以上看起来挺多只要修改其中一个文件即可

修改yum源

以上yum还是8.0在启用

enabled=1

改成enabled=0

需要安装的版本改成enabled=1

即可在yum中安装自己所需版本(适用于centos7和centos8)

建议老版本的安装5.7即可,向下兼容5.5和5.6

实在需要可以自行切换

选择好后查看一下是否启用成功

查看当前可安装的mysql版本

以上为选择5.7的输出结果

安装

启动

意思是mysql数据库中的event表中本来该22个字段,你的表才18过,所以出错了,你把表升级到22个字段的吧

我从数据库导出的:

DROP TABLE IF EXISTS `event`

CREATE TABLE IF NOT EXISTS `event` (

`db` char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',

`name` char(64) NOT NULL DEFAULT '',

`body` longblob NOT NULL,

`definer` char(77) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',

`execute_at` datetime DEFAULT NULL,

`interval_value` int(11) DEFAULT NULL,

`interval_field` enum('YEAR','QUARTER','MONTH','DAY','HOUR','MINUTE','WEEK','SECOND','MICROSECOND','YEAR_MONTH','DAY_HOUR','DAY_MINUTE','DAY_SECOND','HOUR_MINUTE','HOUR_SECOND','MINUTE_SECOND','DAY_MICROSECOND','HOUR_MICROSECOND','MINUTE_MICROSECOND','SECOND_MICROSECOND') DEFAULT NULL,

`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,

`modified` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',

`last_executed` datetime DEFAULT NULL,

`starts` datetime DEFAULT NULL,

`ends` datetime DEFAULT NULL,

`status` enum('ENABLED','DISABLED','SLAVESIDE_DISABLED') NOT NULL DEFAULT 'ENABLED',

`on_completion` enum('DROP','PRESERVE') NOT NULL DEFAULT 'DROP',

`sql_mode` set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') NOT NULL DEFAULT '',

`comment` char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',

`originator` int(10) unsigned NOT NULL,

`time_zone` char(64) CHARACTER SET latin1 NOT NULL DEFAULT 'SYSTEM',

`character_set_client` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,

`collation_connection` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,

`db_collation` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,

`body_utf8` longblob,

PRIMARY KEY (`db`,`name`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Events'

试试吧,祝你好运

一些MySQL发布对mysql数据库中的系统表的结构进行了更改,添加了新权限或特性。当你更新到新版本MySQL,你应同时更新系统表,以确保它们的结构最新。首先备份mysql数据库,然后按照下面的程序 *** 作。

在Unix或Unix类系统中,运行mysql_fix_privilege_tables脚本来更新系统表:

shell>mysql_fix_privilege_tables

你必须在服务器运行时执行该脚本。它试图连接本机上用root运行的服务器。如果root账户需要密码,在命令行中按下述方法给出密码:

shell>mysql_fix_privilege_tables--password=root_password

mysql_fix_privilege_tables脚本可以执行将系统表转换为当前格式的任何动作。运行时你可能会看见一些Duplicate column name警告;你可以忽略它们。

运行完脚本后,停止服务器并重启。

在Windows系统中,MySQL分发包括mysql_fix_privilege_tables.sql SQL脚本,你可以用mysql客户端来运行。例如,如果MySQL安装到C:\Program Files\MySQL\MySQL Server 5.1,命令应为:

C:\>

C:\Program Files\MySQL\MySQL Server 5.1

\bin\mysql -u root -p mysql

mysql>SOURCE C:/Program Files/MySQL/MySQL Server

5.1/scripts/mysql_fix_privilege_tables.sql

如果安装到其它目录,相应地更改路径名。

mysql命令将提示输入root密码;按照提示输入密码。

在Unix中,当mysql处理mysql_fix_privilege_tables.sql script脚本中的语句时,你可能会看见一些Duplicate column name警告;你可以忽略它们。

运行完脚本后,停止服务器并重启。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5901788.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-07
下一篇 2023-03-07

发表评论

登录后才能评论

评论列表(0条)

保存