您当前的位置:首页 > 电脑百科 > 数据库 > MYSQL

双mysql共存(MySQL8.0与MySQL5.7)

时间:2020-03-08 10:50:00  来源:  作者:

MySQL,只是在节约成本的前提下,考虑使用的,更多的是在开发测试环境使用,若是生产环境,尽量不建议如此使用。

若是生产环境,森哥不建议双MySQL共存。而且,尽量建议使用提供商提供的MySQL服务。相对优化、安全、备份等,都比自搭的要好多了。像阿里云的RDS,对MySQL的开源进行二次开发的。比我们自搭的要好的多。

双mysql共存(MySQL8.0与MySQL5.7)

 

一、先默认安装一个mysql

已安装8.0版本

二、安装第二个mysql

1、至官网下载mysql源码

网址:https://dev.mysql.com/downloads/mysql/选择OS版本,Mysql版本,这里以centos7+mysql5.7为例

备注:请选择Source Code,否则cmake会失败

拖动至最底下,选择mysql-5.7.28.tar.gz,大概为51.9M左右

2、上传至服务器解压

 tar -zxvf mysql-5.7.28.tar.gz

3、环境安装

在安装的时,需用到boots下载:wget http://www.sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz

 tar -zxvf boost_1_59_0.tar.gz
 mv boost_1_59_0 /opt/boost

4、mysql安装

4.1、编译安装
 cd mysql-5.7.28
 cmake -DCMAKE_INSTALL_PREFIX=/opt/mysql5.7 -DMYSQL_DATADIR=/opt/mysql5.7/data -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/opt/mysql5.7/mysqld.sock -DMYSQL_TCP_PORT=3307 -DWITH_DEBUG=0 -DENABLED_LOCAL_INFILE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system  -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/opt/boost
 make && make install
4.2、创建my.cnf文件

进入/opt/mysql5.7

 touch /opt/mysql5.7/my.cnf
 [mysqld]
 user=mysql
 port=3307
 basedir=/opt/mysql5.7
 datadir=/opt/mysql5.7/data
 socket=/opt/mysql5.7/mysql.sock
 lower_case_table_names=1
 default-storage-engine=INNODB
 character_set_server=utf8mb4
 innodb_default_row_format=DYNAMIC
 innodb_large_prefix=ON
 innodb_file_format=Barracuda
 innodb_log_file_size=2G
 max_connections=500
 innodb_buffer_pool_size=1G
 #validate_password=off
 symbolic-links=0
 ​
 ​
 [client]
 default-character-set=utf8mb4
 socket=/opt/mysql5.7/mysql.sock
 ​
 [mysqld_safe]
 open-files-limit = 8192
 log-error=/var/log/mysqld5.7.log
 socket=/opt/mysql5.7/mysql.sock
 pid-file=/opt/mysql5.7/mysqld.pid

注: 1、端口一定记得修改,不要与原来的冲突。2、下面这些配置信息,是为了用在jira系统上。根据要求增加的配置内容

 default-storage-engine=INNODB
 character_set_server=utf8mb4
 innodb_default_row_format=DYNAMIC
 innodb_large_prefix=ON
 innodb_file_format=Barracuda
4.3、分配权限
 chown mysql.mysql -R /opt/mysql5.7
 cp /opt/mysql5.7/support-files/mysql.server /etc/init.d/mysql
 chmod 755 /etc/init.d/mysql
4.4、修改配置并添加服务
 vim /etc/init.d/mysql

添加以下文件

 ......
 basedir=/opt/mysql5.7
 datadir=/opt/mysql5.7/data
 ......
  # Try to find basedir in /etc/my.cnf
  conf=/opt/mysql5.7/my.cnf

修改以下参数

 把$bindir/mysqld_safe --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1&替换为:
 ​
 $bindir/mysqld_safe --defaults-file=/opt/mysql5.7/my.cnf --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 &

注释掉下面这句(前面加个#即可):

 parse_server_arguments `$print_defaults $extra_args mysqld server mysql_server mysql.server`

保存退出并添加服务:

 chkconfig --add /etc/init.d/mysql
4.5、启动mysql
 /etc/init.d/mysql start

5、密码初始化

mysql5.7或以上版本的mysql,都会有一个初始化的密码,由于是非正常安装的,具体密码,也不知道是多少,也懒得去掉。就使用如下的方法,优雅的修改密码。

5.1、先停止mysql5.7版本的进程
 /etc/init.d/mysql stop
5.2、通过mysqld_safe启动
 /opt/mysql5.7/bin/mysqld_safe --defaults-file=/opt/mysql5.7/my.cnf --skip-grant-tables --skip-networking &

添加--skip-networking参数,让实例关闭监听端口,自然也就无法建立TCP连接,而只能通过本地socket进行连接。

5.3、修改密码
 /opt/mysql5.7/bin/mysql -S /opt/mysql5.7/mysql.sock
 ​
 mysql> update mysql.user set authentication_string=password('123456') where host='localhost' and user='root';
 Query OK, 0 rows affected, 1 warning (0.00 sec)
 Rows matched: 1 Changed: 0 Warnings: 1
 ​
 mysql> flush privileges;
 Query OK, 0 rows affected (0.00 sec)

注:5.7或以上的版本,使用:authentication_string5.6或以下版本,请使用:password

5.4、退出并重启mysql5.7

退出:

 /opt/mysql5.7/bin/mysqld_safe --defaults-file=/opt/mysql5.7/my.cnf --skip-grant-tables --skip-networking &
 /etc/init.d/mysql start


Tags:mysql   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
作者:雷文霆 爱可生华东交付服务部 DBA 成员,主要负责Mysql故障处理及相关技术支持。爱好看书,电影。座右铭,每一个不曾起舞的日子,都是对生命的辜负。 本文来源:原创投稿 *爱可生...【详细内容】
2021-12-24  Tags: mysql  点击:(7)  评论:(0)  加入收藏
一、为什么要搭建主从架构呢1.数据安全,可以进行数据的备份。2.读写分离,大部分的业务系统来说都是读数据多,写数据少,当访问压力过大时,可以把读请求给到从服务器。从而缓解数据...【详细内容】
2021-12-15  Tags: mysql  点击:(12)  评论:(0)  加入收藏
生成间隙(gap)锁、临键(next-key)锁的前提条件 是在 RR 隔离级别下。有关Mysql记录锁、间隙(gap)锁、临键锁(next-key)锁的一些理论知识之前有写过,详细内容可以看这篇文章...【详细内容】
2021-12-14  Tags: mysql  点击:(18)  评论:(0)  加入收藏
binlog 基本认识 MySQL的二进制日志可以说是MySQL最重要的日志了,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二...【详细内容】
2021-12-14  Tags: mysql  点击:(13)  评论:(0)  加入收藏
为查询优化你的查询 大多数的MySQL服务器都开启了查询缓存。这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的。当有很多相同的查询被执行了多次的时候,这些查...【详细内容】
2021-12-09  Tags: mysql  点击:(15)  评论:(0)  加入收藏
测试的目的和原因,公司有很多程序员,每个程序员对数据库和表结构都有自己的理解。而且每个程序员的理解往往是以效率考虑。既然都是为了效率考虑,那么我就来测试一下究竟哪种使...【详细内容】
2021-12-08  Tags: mysql  点击:(14)  评论:(0)  加入收藏
当你们考虑项目并发的时候,我在部署环境,当你们在纠结使用ArrayList还是LinkedArrayList的时候,我还是在部署环境。所以啊,技术不止境,我在部环境。今天这篇文章缕一下在同一台服...【详细内容】
2021-12-08  Tags: mysql  点击:(17)  评论:(0)  加入收藏
对于数据分析来说,MySQL使用最多的是查询,比如对数据进行排序、分组、去重、汇总及字符串匹配等,如果查询的数据涉及多个表,还需要要对表进行连接,本文就来说说MySQL中常用的查询...【详细内容】
2021-12-06  Tags: mysql  点击:(21)  评论:(0)  加入收藏
在学习SQL语句之前,首先需要区分几个概念,我们常说的数据库是指数据库软件,例如MySQL、Oracle、SQL Server等,而本文提到的数据库是指数据库软件中的一个个用于存储数据的容器。...【详细内容】
2021-11-24  Tags: mysql  点击:(23)  评论:(0)  加入收藏
概述以前参加过一个库存系统,由于其业务复杂性,搞了很多个应用来支撑。这样的话一份库存数据就有可能同时有多个应用来修改库存数据。比如说,有定时任务域xx.cron,和SystemA域...【详细内容】
2021-11-05  Tags: mysql  点击:(31)  评论:(0)  加入收藏
▌简易百科推荐
作者:雷文霆 爱可生华东交付服务部 DBA 成员,主要负责Mysql故障处理及相关技术支持。爱好看书,电影。座右铭,每一个不曾起舞的日子,都是对生命的辜负。 本文来源:原创投稿 *爱可生...【详细内容】
2021-12-24  爱可生    Tags:MySQL   点击:(7)  评论:(0)  加入收藏
生成间隙(gap)锁、临键(next-key)锁的前提条件 是在 RR 隔离级别下。有关Mysql记录锁、间隙(gap)锁、临键锁(next-key)锁的一些理论知识之前有写过,详细内容可以看这篇文章...【详细内容】
2021-12-14  python数据分析    Tags:MySQL记录锁   点击:(18)  评论:(0)  加入收藏
binlog 基本认识 MySQL的二进制日志可以说是MySQL最重要的日志了,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二...【详细内容】
2021-12-14  linux上的码农    Tags:mysql   点击:(13)  评论:(0)  加入收藏
为查询优化你的查询 大多数的MySQL服务器都开启了查询缓存。这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的。当有很多相同的查询被执行了多次的时候,这些查...【详细内容】
2021-12-09  元宇宙iwemeta    Tags:mysql   点击:(15)  评论:(0)  加入收藏
测试的目的和原因,公司有很多程序员,每个程序员对数据库和表结构都有自己的理解。而且每个程序员的理解往往是以效率考虑。既然都是为了效率考虑,那么我就来测试一下究竟哪种使...【详细内容】
2021-12-08  吴彬的分享    Tags:Mysql数据库   点击:(14)  评论:(0)  加入收藏
当你们考虑项目并发的时候,我在部署环境,当你们在纠结使用ArrayList还是LinkedArrayList的时候,我还是在部署环境。所以啊,技术不止境,我在部环境。今天这篇文章缕一下在同一台服...【详细内容】
2021-12-08  秃头码哥    Tags:MySQL数据库   点击:(17)  评论:(0)  加入收藏
对于数据分析来说,MySQL使用最多的是查询,比如对数据进行排序、分组、去重、汇总及字符串匹配等,如果查询的数据涉及多个表,还需要要对表进行连接,本文就来说说MySQL中常用的查询...【详细内容】
2021-12-06  笨鸟学数据分析    Tags:MySQL   点击:(21)  评论:(0)  加入收藏
在学习SQL语句之前,首先需要区分几个概念,我们常说的数据库是指数据库软件,例如MySQL、Oracle、SQL Server等,而本文提到的数据库是指数据库软件中的一个个用于存储数据的容器。...【详细内容】
2021-11-24  笨鸟学数据分析    Tags:SQL语句   点击:(23)  评论:(0)  加入收藏
概述以前参加过一个库存系统,由于其业务复杂性,搞了很多个应用来支撑。这样的话一份库存数据就有可能同时有多个应用来修改库存数据。比如说,有定时任务域xx.cron,和SystemA域...【详细内容】
2021-11-05  Java云海    Tags:分布式锁   点击:(31)  评论:(0)  加入收藏
MySQL的进阶查询 一、 按关键字排序 使用ORDERBY语句来实现排序排序可针对一个或多个字段ASC:升序,默认排序方式 【升序是从小到大】DESC:降序 【降序是从大到小】ORDER BY的...【详细内容】
2021-11-05  Java热点    Tags:SQL语句   点击:(28)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条