最近需要用到mysql8.0版本,但是原来的mysql5.7版本已经被多个服务依赖,于是想着能不能在同一台服务器上安装多个版本的mysql。查了下确实可行,在此记录一下,方便自己以后回忆,看本文前请多多关照!!!本文是帮助大家确定mysql5.7版本已经安装并运行。另外安装配置mysql8.0版本。如果需要同时安装两个版本,可以先参考我写的安装mysql5.7版本的内容。完成后然后按照本文继续安装环境CentOS7+MySQL8.0下载安装包点击进入MySQLCommunityServer8.0.29官网下载地址。点击下拉选择Linux-Generic,找到名字mysql-8.0.29-linux-glibc2.12-x86_64.tar.xz点击下载简化版命令步骤。给自己提个醒:原来的mysql5.7配置基本没变,服务也没有关联。下面的命令都是关于mysql8.0的,原来mysql5.7的配置文件解压在/etc/my.cnf中。xz文件是一个tar文件。注意该命令没有进程,需要等待窗口跳转到下一行。xz-d/usr/soft/sort/mysql-8.0.29-linux-glibc2.12-x86_64.tar.xz-C/usr/soft/sort/tar-xvf/usr/soft/sort/mysql-8.0.29-linux-glibc2.12-x86_64.tar-C/usr/soft/install/授予权限chown-Rmysql.mysql/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64修改配置文件vi/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/my.cnf[client]port=3307#mysql57不想要这个mysqlx_port=33070socket=/tmp/mysql80.sock#mysql57不要这个mysqlx_socket=/tmp/mysqlx80.sock[mysqld]#skip-grant-tables#mysql安装目录basedir=/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64#mysql数据库目录datadir=/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/dataport=3307innodb_file_per_table=1character-set-server=utf8#mysql57不想要这个mysqlx_port=33070socket=/tmp/mysql80.sock#mysql57不想要这个mysqlx_socket=/tmp/mysqlx80.sock[mysqld_safe]#错误日志log-error=/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/data/error.log#pid文件pid-file=/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/data/mysqld.pidtmpdir=/tmp/mysql80给配置文件权限chmod755/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/my.cnf修改连接服务文件vi/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/support-files/mysql.server#这两项在basedir=/usr/soft/install/mysql-8.0.29-linux-glibc2开头比较好找。12-x86_64datadir=/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/data#这个默认不用找lockdir='/var/lock/subsys'#这个默认有但需要改为80lock_file_path="$attheendlockdir/mysql80"#下面两个隐藏在下面,仔细寻找mysqld_pid_file_path=/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/data/mysqld.pidconf=/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/my.cnf复制注册连接服务文件cp-i/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/support-files/mysql.server/etc/init.d/mysql80initmysql80/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/bin/mysqld--defaults-file=/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/my.cnf--user=mysql--initializeroot@localhost:启动mysql80的初始密码serviceservicemysql80启动,记得打开防火墙的3307端口登录/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/bin/mysql--socket=/tmp/mysql80通过外部连接。sock-uroot-p'initialpassword'重置密码,登录后依次执行命令flushprivileges;注意:新版本mysql8后不再支持password()方法,只能通过alter语句修改ALTERUSER'root'@'localhost'IDENTIFIEDBY'yourpassword';如果不是,请尝试ALTERUSER'root'@'%'IDENTIFIEDBY'yourpassword';使用MySQL;updateusersethost='%'whereuser='root'andhost='localhost';flushprivileges;检查占用的端口showglobalvariableslike'port';如果发现为0,则需要执行以下步骤修改并停止服务:servicemysql80stop修改配置文件:vi/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/my.cnf,注释掉[mysqld]下的skip-grant-tables重启服务:servicemysql80starttoopen3307processcd/etc/sysconfigto进入目录,查看是否存放了iptables文件vimiptables使用vim编辑器修改iptables文件,按i进入编辑模式,添加-AINPUT-ptcp-mstate--stateNEW-mtcp--dport下初始端口行3307-jACCEPT,开启3307端口serviceiptablesrestart并重启防火墙。如果mysql80服务启动失败,可以参考以下步骤重新初始化数据库,有效删除data文件夹。rm-rf/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/data新建数据目录mkdir/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/数据授予权限chown-Rmysql.mysql/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64重新初始化/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/bin/mysqld--defaults-file=/usr/soft/install/mysql-8.0.29-linux-glibc2.12-x86_64/my.cnf--user=mysql--initializetest启动service服务mysql80启动,成功的话可以参考文档在linux下同时安装mysql5.7和mysql8。0linux安装两个mysql(8.0和5.7),同时使用tar.xz文件如何解压linuxmysql8linux下修改初始密码查看mysql端口号修改端口号方法我是fx67ll.com,如果大家发现本文有什么错误,欢迎在评论区讨论指正,感谢阅读!如果你喜欢这篇文章章节,欢迎访问我这篇文章的github仓库地址,为我点一个Star,谢谢~:)转发请注明参考文章地址,万分感谢!!!
