IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 多种方式安装MySQL 8 -> 正文阅读

[系统运维]多种方式安装MySQL 8

MySQL 8安装

一、安装包下载

  1. 下载地址:

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

  2. 版本选择:

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

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

二、多种方式安装

RPM包安装

  1. 安装mysql-community-common-8.0.28-1.el7.x86_64.rpmrpm -ivh mysql-community-common-8.0.28-1.el7.x86_64.rpm
  2. 安装mysql-community-client-plugins-8.0.28-1.el7.x86_64.rpmrpm -ivh mysql-community-client-plugins-8.0.28-1.el7.x86_64.rpm
  3. 安装mysql-community-libs-8.0.28-1.el7.x86_64.rpmrpm -ivh mysql-community-libs-8.0.28-1.el7.x86_64.rpm
  4. 安装mysql-community-client-8.0.28-1.el7.x86_64.rpmrpm -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.rpmmysql-community-icu-data-files-8.0.28-1.el7.x86_64.rpm
  6. 安装mysql-community-server-8.0.28-1.el7.x86_64.rpmrpm -ivh mysql-community-server-8.0.28-1.el7.x86_64.rpm
  7. 一键安装sudo yum install mysql-community-{server,client,common,libs,icu}-*

二进制文件安装

  1. 移除mariadbrpm -e mariadb-libs-5.5.68-1.el7.x86_64yum remove mariadb-libs-5.5.68-1.el7.x86_64
  2. 解压tar.gztar -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,修改basedirdatadir
  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. rpmyumDeb安装,执行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,修改basedirdatadir
      • 启动mysqldsudo 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. 通过yumrpm安装的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,将basedirdatadir补充完整即可。

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

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
    
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-05-06 11:20:15  更:2022-05-06 11:22:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 17:23:18-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码