Linux7.6二进制安装Mysql8.0.27详细 *** 作步骤

Linux7.6二进制安装Mysql8.0.27详细 *** 作步骤,第1张

Linux7.6二进制安装Mysql8.0.27详细 *** 作步骤 目录
  • 一、环境准备
    • 1.1 *** 作系统版本
    • 1.2 磁盘空间
    • 1.3 关闭防火墙
    • 1.4 关闭 selinux
    • 1.5 HOST解析
    • 1.6 Mysql下载
  • 二、 yum安装及配置
    • 2.1 挂载本地光盘镜像
    • 2.2 配置yum源
    • 2.3 安装依赖包
  • 三、卸载MariaDB
    • 四、安装 MySQL
      • 4.1 用户及目录创建
      • 4.2 用户及组
      • 4.3 上传软件包并解压
    • 五.环境变量配置
      • 六.创建参数文件
        • 七.数据库初始化
          • 八.启动Mysql
            • 九.登陆Mysql
              • 十.修改密码
                • 十一.远程登陆设置

                  一、环境准备

                  1.1 *** 作系统版本
                  [root@rhel76 ~]# cat /etc/redhat-release
                  Red Hat Enterprise Linux Server release 7.6 (Maipo)

                  1.2 磁盘空间
                  [root@rhel76 ~]# df -TH
                  Filesystem            Type      Size  Used Avail Use% Mounted on
                  /dev/mapper/rhel-root xfs        32G  4.6G   27G  15% /
                  devtmpfs              devtmpfs  2.1G     0  2.1G   0% /dev
                  tmpfs                 tmpfs     2.1G     0  2.1G   0% /dev/shm
                  tmpfs                 tmpfs     2.1G   14M  2.1G   1% /run
                  tmpfs                 tmpfs     2.1G     0  2.1G   0% /sys/fs/cgroup
                  /dev/sda1             xfs       996M  172M  825M  18% /boot
                  /dev/mapper/rhel-u01  xfs        30G   34M   30G   1% /u01
                  tmpfs                 tmpfs     413M  4.1k  413M   1% /run/user/42
                  tmpfs                 tmpfs     413M   46k  413M   1% /run/user/0
                  

                  1.3 关闭防火墙
                  [root@rhel76 ~]# systemctl status firewalld
                  ● firewalld.service - firewalld - dynamic firewall daemon
                     Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
                     Active: active (running) since Tue 2021-11-23 23:46:04 UTC; 9min ago
                       Docs: man:firewalld(1)
                  Main PID: 9621 (firewalld)
                      Tasks: 2
                     CGroup: /system.slice/firewalld.service
                             └─9621 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid
                  
                  
                  Nov 23 23:46:03 rhel76 systemd[1]: Starting firewalld - dynamic firewall daemon...
                  Nov 23 23:46:04 rhel76 systemd[1]: Started firewalld - dynamic firewall daemon.
                  
                  [root@rhel76 ~]# systemctl stop firewalld
                  [root@rhel76 ~]# systemctl disable firewalld
                  Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
                  Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
                  

                  1.4 关闭 selinux
                  [root@rhel76 ~]# getenforce
                  Enforcing
                  
                  [root@rhel76 ~]# cp /etc/selinux/config /etc/selinux/config_`date +"%Y%m%d_%H%M%S"`
                  [root@rhel76 ~]# sed -i 's/SELINUX\=enforcing/SELINUX\=disabled/g' /etc/selinux/config
                  
                  以上修改完后重启
                  [root@rhel76 ~]# reboot
                  
                  [root@rhel76 ~]# getenforce
                  Disabled
                  [root@rhel76 ~]# sestatus
                  SELinux status:  disabled
                  

                  1.5 HOST解析
                  [root@rhel76 ~]# cat /etc/hosts
                  
                  127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
                  ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
                  192.168.6.81 rhel76
                  
                  [root@rhel76 ~]# hostname
                  rhel76
                  

                  1.6 Mysql下载
                  https://dev.mysql.com/downloads/mysql/
                  MD5: 0bdd171cb8464ba32f65f7bf58bc9533
                  

                  二、 yum安装及配置

                  2.1 挂载本地光盘镜像
                  [root@rhel76 ~]# mkdir -p /mnt/dvd/
                  
                  [root@rhel76 ~]# df -TH
                  Filesystem            Type      Size  Used Avail Use% Mounted on
                  /dev/mapper/rhel-root xfs        32G  4.7G   27G  15% /
                  devtmpfs              devtmpfs  2.1G     0  2.1G   0% /dev
                  tmpfs                 tmpfs     2.1G     0  2.1G   0% /dev/shm
                  tmpfs                 tmpfs     2.1G   14M  2.1G   1% /run
                  tmpfs                 tmpfs     2.1G     0  2.1G   0% /sys/fs/cgroup
                  /dev/sda1             xfs       996M  172M  825M  18% /boot
                  /dev/mapper/rhel-u01  xfs        30G   34M   30G   1% /u01
                  tmpfs                 tmpfs     413M   21k  413M   1% /run/user/0
                  tmpfs                 tmpfs     413M   13k  413M   1% /run/user/42
                  /dev/sr0              iso9660   4.5G  4.5G     0 100% /run/media/root/RHEL-7.6 Server.x86_64
                  
                  [root@rhel76 ~]# mount /dev/sr0 /mnt/dvd
                  mount: /dev/sr0 is write-protected, mounting read-only
                  You have mail in /var/spool/mail/root
                  

                  2.2 配置yum源
                  [root@rhel76 ~]# cd /etc/yum.repos.d/
                  [root@rhel76 yum.repos.d]# cat >> /etc/yum.repos.d/redhat.repo << "EOF"
                  > [rhel7]
                  > name=jeames repo
                  > baseurl=file:///mnt/dvd/
                  > gpgcheck=0
                  > EOF
                  

                  2.3 安装依赖包
                  [root@rhel76 ~]# yum -y groupinstall "DeveLopment tools"
                  Loaded plugins: fastestmirror, product-id, search-disabled-repos, subscription-manager
                  This system is not registered with an entitlement server. You can use subscription-manager to register.
                  There is no installed groups file.
                  Maybe run: yum groups mark convert (see man yum)
                  Loading mirror speeds from cached hostfile
                  Warning: Group development does not have any packages to install.
                  Maybe run: yum groups mark install (see man yum)
                  No packages in any requested group available to install or update
                  
                  [root@rhel76 ~]# yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make
                  

                  三、卸载MariaDB
                  [root@rhel76 ~]# rpm -qa |grep mariadb
                  mariadb-libs-5.5.60-1.el7_5.x86_64
                  
                  [root@rhel76 ~]# rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
                  

                  四、安装 MySQL

                  4.1 用户及目录创建
                  注:可以部署多个实例,通过端口区分root 用户 *** 作:mkdir -p /mysql/data/mysql3306mkdir -p /mysql/app/mkdir -p /mysql/conf/mkdir -p /mysql/data/mysql3306/pid/mkdir -p /mysql/data/mysql3306/socket/mkdir -p /mysql/data/mysql3306/log/mkdir -p /mysql/data/mysql3306/binlog/mkdir -p /mysql/data/mysql3306/errlogmkdir -p /mysql/data/mysql3306/relaylog/mkdir -p /mysql/data/mysql3306/slowlog/mkdir -p /mysql/data/mysql3306/tmp/
                  

                  4.2 用户及组
                  [root@rhel76 ~]# groupadd mysql
                  [root@rhel76 ~]# useradd -g mysql mysql
                  [root@rhel76 ~]# chown -R mysql:mysql /mysql
                  [root@rhel76 ~]# passwd mysql
                  Changing password for user mysql.
                  New password:
                  BAD PASSWORD: The password is shorter than 8 characters
                  Retype new password:
                  passwd: all authentication tokens updated successfully.
                  
                  [root@rhel76 ~]# cat /etc/group | grep mysql
                  mysql:x:1001:
                  [root@rhel76 ~]# cat /etc/passwd | grep mysql
                  mysql:x:1001:1001::/home/mysql:/bin/bash
                  

                  4.3 上传软件包并解压
                  [root@rhel76 ~]# cp mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz /mysql/app
                  [root@rhel76 ~]# chown -R mysql:mysql /mysql
                  
                  mysql用户 *** 作
                  [root@rhel76 ~]# su - mysql
                  md5 值验证,保证下载到的软件包无破损无木马
                  [mysql@rhel76 ~]$ cd /mysql/app
                  [mysql@rhel76 app]$ ll
                  total 1168588
                  -rw-r--r-- 1 mysql mysql 1196633756 Nov 24 00:49 mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz
                  [mysql@rhel76 app]$ md5sum mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz
                  0bdd171cb8464ba32f65f7bf58bc9533  mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz
                  
                  解压软件包并重命名
                  [mysql@rhel76 app]$ tar xvf mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz
                  [mysql@rhel76 app]$ mv mysql-8.0.27-linux-glibc2.12-x86_64 mysql8.0.27
                  
                  [mysql@rhel76 app]$ ll
                  total 1168588
                  drwxrwxr-x 9 mysql mysql        129 Nov 24 00:54 mysql8.0.27
                  -rw-r--r-- 1 mysql mysql 1196633756 Nov 24 00:49 mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz
                  

                  五.环境变量配置
                  cat >> /home/mysql/.bash_profile << "EOF"
                  MYSQL_HOME=/mysql/app/mysql8.0.27
                  PATH=$PATH:$HOME/.local/bin:$HOME/bin:$MYSQL_HOME/bin
                  EOF
                  
                  
                  source ~/.bash_profile
                  which mysql
                  

                  六.创建参数文件
                  由于是二进制文件安装,数据库参数文件需要自己配置
                  
                  cat >> /mysql/conf/my3306.cnf << "EOF"
                  [mysqld]
                  server_id = 80273306
                  default-storage-engine= InnoDB
                  basedir=/mysql/app/mysql8.0.27
                  datadir=/mysql/data/mysql3306/data/
                  socket=/mysql/data/mysql3306/socket/mysql.sock
                  log-error=/mysql/data/mysql3306/log/mysqld.log
                  pid-file=/mysql/data/mysql3306/pid/mysqld.pid
                  port=3306
                  default-time_zone='+8:00'
                  default_authentication_plugin=mysql_native_password # 加此参数可远程登陆
                  transaction_isolation=READ-COMMITTED
                  max_connections=1500
                  back_log=500
                  wait_timeout=1800
                  max_user_connections=800
                  innodb_buffer_pool_size=1024M
                  innodb_log_file_size=512M
                  innodb_log_buffer_size=40M
                  slow_query_log=ON
                  long_query_time=5
                  # log settings #
                  slow_query_log = ON
                  slow_query_log_file = /mysql/data/mysql3306/slowlog/slow3306.log
                  log_error = /mysql/data/mysql3306/errlog/err3306.log
                  log_error_verbosity = 3
                  log_bin = /mysql/data/mysql3306/binlog/mysql_bin
                  log_bin_index = /mysql/data/mysql3306/binlog/mysql_binlog.index
                  general_log_file = /data/mysql/mysql3306/generallog/general.log
                  log_queries_not_using_indexes = 1
                  log_slow_admin_statements = 1
                  expire_logs_days = 90
                  binlog_expire_logs_seconds = 2592000      #30d
                  long_query_time = 2
                  min_examined_row_limit = 100
                  log_throttle_queries_not_using_indexes = 1000
                  innodb_flush_log_at_trx_commit=1
                  
                  EOF
                  

                  七.数据库初始化
                  mysql用户 *** 作:
                  mysqld --defaults-file=/mysql/conf/my3306.cnf --initialize --user=mysql --basedir=/mysql/app/mysql8.0.27 --datadir=/mysql/data/mysql3306/data/
                  注意:以上同一行执行
                  

                  八.启动Mysql
                  [mysql@rhel76 ~]$ mysqld_safe --defaults-file=/mysql/conf/my3306.cnf --user=mysql &
                  [1] 21406
                  [mysql@rhel76 ~]$ 2021-11-24T06:14:23.240372Z mysqld_safe Logging to '/mysql/data/mysql3306/errlog/err3306.log'.
                  2021-11-24T06:14:23.296992Z mysqld_safe Starting mysqld daemon with databases from /mysql/data/mysql3306/data
                  

                  九.登陆Mysql
                  第一次登录 MySQL 时,需要到错误日志下找初始化密码,我这里的密码为:-(Qy5Aj9t,=a
                  使用 socket 加密码登录进去后,无法查询任何东西,提示先要修改 root 密码。
                  
                  [mysql@rhel76 ~]$ cat /mysql/data/mysql3306/errlog/err3306.log | grep password
                  
                  2021-11-24T06:12:14.610657Z 0 [Note] [MY-010309] [Server] Auto generated RSA key files through --sha256_password_auto_generate_rsa_keys are placed in data directory.
                  2021-11-24T06:12:14.610686Z 0 [Note] [MY-010308] [Server] Skipping generation of RSA key pair through --caching_sha2_password_auto_generate_rsa_keys as key files are present in data directory.
                  2021-11-24T06:12:14.615367Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: -(Qy5Aj9t,=a
                  2021-11-24T06:14:26.153958Z 0 [Note] [MY-010308] [Server] Skipping generation of RSA key pair through --sha256_password_auto_generate_rsa_keys as key files are present in data directory.
                  2021-11-24T06:14:26.153979Z 0 [Note] [MY-010308] [Server] Skipping generation of RSA key pair through --caching_sha2_password_auto_generate_rsa_keys as key files are present in data directory.
                  
                  [mysql@rhel76 ~]$ mysql -uroot -p
                  Enter password:
                  ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
                  
                  ##此处通过sock登陆
                  [mysql@rhel76 ~]$ mysql -uroot -p  -P 3306 -S /mysql/data/mysql3306/socket/mysql.sock
                  Enter password:
                  Welcome to the MySQL monitor.  Commands end with ; or \g.
                  Your MySQL connection id is 8
                  Server version: 8.0.27
                  
                  
                  Copyright (c) 2000, 2021, Oracle and/or its affiliates.
                  
                  
                  Oracle is a registered trademark of Oracle Corporation and/or its
                  affiliates. Other names may be trademarks of their respective
                  owners.
                  
                  
                  Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
                  
                  
                  mysql> status
                  ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
                  

                  十.修改密码
                  mysql> alter user root@'localhost' identified by 'root';Query OK, 0 rows affected (0.01 sec)mysql> status--------------mysql  Ver 8.0.27 for Linux on x86_64 (MySQL Community Server - GPL)Connection id:          8Current database:Current user:           root@localhostSSL:                    Not in useCurrent pager:          stdoutUsing outfile:          ''Using delimiter:        ;Server version:         8.0.27Protocol version:       10Connection:             Localhost via UNIX socketServer characterset:    utf8mb4Db     characterset:    utf8mb4Client characterset:    utf8mb4Conn.  characterset:    utf8mb4UNIX socket:            /mysql/data/mysql3306/socket/mysql.sockBinary data as:         HexadecimalUptime:                 8 min 0 secThreads: 2  Questions: 7  Slow queries: 0  Opens: 398  Flush tables: 3  Open tables: 36  Queries per second avg: 0.014--------------
                  

                  十一.远程登陆设置
                  使用如下语句创建 root 用户是无法通过 navicat 等客户端登录的,
                  由于从 MySQL8 开始,身份验证插件发生改变,
                  默认的 “caching_sha2_password” 不允许远程登录,
                  故需将此插件修改为 “mysql_native_password” 便可登录。
                  
                  mysql> create user root@'%' identified with mysql_native_password by 'root';
                  mysql> grant all on *.* to root@'%' with grant option;
                  mysql> flush privileges;
                  
                  mysql> select user,host,plugin from mysql.user;  
                  +------------------+-----------+-----------------------+
                  | user             | host      | plugin                |
                  +------------------+-----------+-----------------------+
                  | root             | %         | mysql_native_password |
                  | mysql.infoschema | localhost | caching_sha2_password |
                  | mysql.session    | localhost | caching_sha2_password |
                  | mysql.sys        | localhost | caching_sha2_password |
                  | root             | localhost | mysql_native_password |
                  +------------------+-----------+-----------------------+
                  5 rows in set (0.00 sec)
                  

                  到此这篇关于Linux7.6二进制安装Mysql8.0.27详细 *** 作步骤的文章就介绍到这了,更多相关Linux7.6二进制安装Mysql8.0.27内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

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

                  原文地址: http://outofmemory.cn/sjk/883885.html

                  (0)
                  打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
                  上一篇 2022-05-14
                  下一篇 2022-05-14

                  发表评论

                  登录后才能评论

                  评论列表(0条)

                  保存