栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

多种方式安装MySQL 8

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

多种方式安装MySQL 8

MySQL 8安装 一、安装包下载
  1. 下载地址:

    最新版本下载地址:MySQL :: Download MySQL Community Server
    历史版本下载地址:MySQL :: Download MySQL Community Server (Archived Versions)

  2. 版本选择:

    • 新的应用安装,应尽量选择最新的GA版本进行安装,以便能够使用新版本的新特性;老旧应用升级安装,应在测试环境充分测试,并使用最近生产环境数据进行充分验证。
    • Ubuntu系统选择ubuntu linux;CentOS选择Red Hat Enterprise Linux / Oracle Linux;编译安装选择Source Code
  3. 版本选择:

    • 新的应用安装,应尽量选择最新的GA版本进行安装,以便能够使用新版本的新特性;老旧应用升级安装,应在测试环境充分测试,并使用最近生产环境数据进行充分验证。
    • Ubuntu系统选择ubuntu linux;CentOS选择Red Hat Enterprise Linux / Oracle Linux;编译安装选择Source Code
二、多种方式安装 RPM包安装
  1. 安装mysql-community-common-8.0.28-1.el7.x86_64.rpm,rpm -ivh mysql-community-common-8.0.28-1.el7.x86_64.rpm
  2. 安装mysql-community-client-plugins-8.0.28-1.el7.x86_64.rpm,rpm -ivh mysql-community-client-plugins-8.0.28-1.el7.x86_64.rpm
  3. 安装mysql-community-libs-8.0.28-1.el7.x86_64.rpm,rpm -ivh mysql-community-libs-8.0.28-1.el7.x86_64.rpm
  4. 安装mysql-community-client-8.0.28-1.el7.x86_64.rpm,rpm -ivh mysql-community-client-8.0.28-1.el7.x86_64.rpm
  5. 安装mysql-community-icu-data-files-8.0.28-1.el7.x86_64.rpm,mysql-community-icu-data-files-8.0.28-1.el7.x86_64.rpm
  6. 安装mysql-community-server-8.0.28-1.el7.x86_64.rpm,rpm -ivh mysql-community-server-8.0.28-1.el7.x86_64.rpm
  7. 一键安装sudo yum install mysql-community-{server,client,common,libs,icu}-*
二进制文件安装
  1. 移除mariadb,rpm -e mariadb-libs-5.5.68-1.el7.x86_64 或 yum remove mariadb-libs-5.5.68-1.el7.x86_64
  2. 解压tar.gz,tar -zxvf mysql-8.0.28-el7-x86_64.tar.gz
  3. 重命名文件mv mysql-8.0.28-el7-x86_64 mysql-8.0.28
  4. 添加mysql用户和组groupadd mysql && useradd -M -g mysql mysql
  5. 更改mysql解压后目录所属用户chown -R mysql:mysql mysql-8.0.28
  6. 初始化mysql,./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql-8.0.28/ --datadir= /var/lib/mysql/
  7. 设置全局变量,ln -s /usr/local/mysql-8.0.28/bin/mysql /usr/local/bin/, 或 export PATH=$PATH:/usr/local/mysql-8.0.28/bin
  8. vim /etc/profile 添加 export PATH=$PATH:/opt/software/mysql-8.0.28/bin
  9. 设置为service服务,cp /usr/local/mysql-8.0.28/support-file/mysql.server /etc/init.d/mysqld,修改basedir和datadir
  10. 设置开机自启,chkconfig mysqld on。取消自启,chkconfig mysqld off
Deb包安装
  1. 下载mysql-server_5.7.37-1ubuntu18.04_amd64.deb-bundle.tar,并解压

  2. 安装依赖apt install libaio1 libmecab2

  3. 按顺序安装deb包

    dpkg -i libmysqlclient20_5.7.37-1ubuntu18.04_amd64.deb
    dpkg -i libmysqlclient-dev_5.7.37-1ubuntu18.04_amd64.deb
    dpkg -i libmysqld-dev_5.7.37-1ubuntu18.04_amd64.deb
    dpkg -i mysql-common_5.7.37-1ubuntu18.04_amd64.deb
    dpkg -i mysql-community-source_5.7.37-1ubuntu18.04_amd64.deb
    dpkg -i mysql-community-client_5.7.37-1ubuntu18.04_amd64.deb
    dpkg -i mysql-client_5.7.37-1ubuntu18.04_amd64.deb
    
YUM源安装
  1. 执行sudo yum repolist enabled| grep mysql查看本地yum源配置,如当前启用的是MySQL5.7,禁用即可

    # 查看当前YUM源,可以看到当前有5.7和8.0两个版本
    sudo yum repolist enabled | grep mysql
    # mysql57-community/x86_64            MySQL 5.7 Community Server   enabled:    540
    # mysql80-community/x86_64            MySQL 8.0 Community Server   enabled:    303
    
    # 禁用5.7YUM源,修改/etc/yum.repos.d/mysql-community.repo,将5.7版本的源enabled值改为0
    [mysql57-community]
    name=MySQL 5.7 Community Server
    baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
    # enabled=1
    enabled=0
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022
           file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
    
  2. 如果没有8.0版本的源,在/etc/yum.repos.d/mysql-community.repo添加如下配置即可:

    [mysql80-community]
    name=MySQL 8.0 Community Server
    baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/7/$basearch/
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022
           file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
    
  3. 执行sudo yum install mysql-community-server,安装MySQL。其中 mysql-community-client mysql-community-common mysql-community-libs会作为依赖一起安装。

三、验证安装
  1. 查看mysql版本,mysql --verison
四、启动MySQL服务
  1. 不同的安装方式,有不同的启动流程:
    1. rpm、yum、Deb安装,执行sudo service mysqld start
    2. 二进制文件安装:
      • 先进行初始化./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql-8.0.28/ --datadir=/var/lib/mysql/
      • 添加service服务脚本,cp /usr/local/mysql-8.0.28/support-file/mysql.server /etc/init.d/mysqld,修改basedir和datadir
      • 启动mysqld,sudo service mysqld start
  2. 查看服务状态,sudo service mysqld status
  3. 停止服务,sudo service mysqld stop
  4. 重启服务,sudo service mysqld restart
  5. 设置开机启动sudo systemctl enable mysqld,查看开机启动状态sudo systemctl list-unit-files | grep mysqld,禁止开机启动sudo systemctl disable mysqld
  6. 通过yum、rpm安装的service服务脚本默认目录为/usr/lib/systemd/system/mysqld.service
五、验证服务
  1. 初始化root密码是随机生成的,可在$log-error(默认值为:/var/log/mysqld.log)中,使用sudo cat /var/log/mysqld.log | grep temporary获得

  2. 初始化的root密码是临时的,需要登陆命令行,进行重置,才能进行后续操作。重置root密码的SQL:

    -- 生产切记使用较复杂的密码
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'Pa4word!';
    
  3. 验证服务状态:

    1. 使用mysql命令行连接,mysql -u root -p
    2. 随意执行一条查询SQL,或者执行mysqladmin -u root -p version
六、异常处理
  1. 出现mariadb-libs is obsoleted by mysql-community-libs-8.0.28-1.el7.x86_64,需要移除mariadb执行yum remove mysql-libs

  2. Yum安装出现Error: Package: mysql-community-client-plugins-8.0.29-1.el6.x86_64 (mysql80-community) Requires: libsasl2.so.2()(64bit)或Error: Package: mysql-community-client-plugins-8.0.29-1.el6.x86_64 (mysql80-community) Requires: libudev.so.0()(64bit),检查/etc/yum.repos.d/mysql-community.repo,官方给的是el6版本的源。

    如果使用的是Centos7,将baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/6/$basearch/改为baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/7/$basearch/

  3. 出现GPG key retrieval failed: [Errno 14] curl#37 - "Couldn't open file /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022",有两种解决办法:

    1. 更改/etc/yum.repos.d/mysql-community.repo,将gpgcheck值改为0
    2. 将gpgkey存储在/etc/yum.repos.d/mysql-community.repo,指定的目录。如果本地不存在执行sudo wget -O /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022 https://repo.mysql.com/RPM-GPG-KEY-mysql-2022进行下载
  4. 出现GPG key retrieval failed: [Errno 14] curl#37 - "Couldn't open file /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql",有两种解决办法:

    1. 更改/etc/yum.repos.d/mysql-community.repo,将gpgcheck值改为0
    2. 将gpgkey存储在/etc/yum.repos.d/mysql-community.repo,指定的目录。如果本地不存在执行sudo wget -O /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql https://repo.mysql.com/RPM-GPG-KEY-mysql进行下载
  5. 出现Can't create test file /data/mysql/mysqld_tmp_file_case_insensitive_test.lower-test,需要关闭系统SELinux

  6. 远程无法连接,执行以下操作:

    -- 创建连接用户
    create user 'root'@'%' identified by '123456'; -- IP规则可以使用`%`、`127.0.0.%`、`127.0.%.%`等
    
    -- 授权用户访问权限
    grant all privileges on *.* to 'root'@'%' with grant option;
    
    -- 刷新系统权限
    flush privileges;
    
  7. /etc/init.d/mysqld: line 239: my_print_defaults: command not found,编辑support-files/mysql.server,将basedir和datadir补充完整即可。

  8. You must reset your password using ALTER USER statement before executing this statement初次需要修改密码

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
    
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/866308.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号