centos按照mysql

mysql

  • 下载

    步骤:

    Select Operating System: Linux - Generic

    下载Linux - Generic (glibc 2.12) (x86, 64-bit), Compressed TAR Archive 5.7.38 643.6M

    下载地址:

    https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz

  • 安装

    • 压缩包拷贝到服务器/usr/local/software

    • 解压

      bash 复制代码
      cd /usr/local/software
      tar -zxvf mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz
      #解压文件目录移动到/usr/local/env目录下,并重命名为mysql
      mv mysql-5.7.38-linux-glibc2.12-x86_64 /usr/local/env/mysql
      mv /usr/local/env/mysql-5.7.38-linux-glibc2.12-x86_64/ /usr/local/env/mysql
    • 创建用户组(mysql),并新建mysql用户,添加到mysql用户组

      bash 复制代码
      groupadd mysql
      #-r表示用户为系统用户,不可登录
      useradd -r -g mysql mysql
    • 配置mysql

      bash 复制代码
      cd /usr/local/env/mysql
      #创建数据存放目录
      mkdir data
      
      #新建my.cnf
      vi my.cnf
      ###########填充内容###########
      [mysql]
      # 设置mysql客户端默认字符集
      default-character-set=utf8
      [mysqld]
      #跳过权限表校验
      #skip-grant-tables
      skip-name-resolve
      #设置3306端口
      port = 3306
      # 设置mysql的安装目录
      basedir=/usr/local/env/mysql
      # 设置mysql数据库的数据的存放目录
      datadir=/usr/local/env/mysql/data
      # 允许最大连接数
      max_connections=200
      # 服务端使用的字符集默认为8比特编码的latin1字符集
      character-set-server=utf8
      # 创建新表时将使用的默认存储引擎
      default-storage-engine=INNODB
      lower_case_table_names=1
      max_allowed_packet=16M
      ###########填充内容退出###########
      #覆盖/etc/my.cnf
      mv my.cnf /etc/my.cnf
    • 初始化mysql

      所有命令在/usr/local/env/mysql执行

      以空密码初始化mysql

      bash 复制代码
      ./bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/env/mysql --datadir=/usr/local/env/mysql/data/

      --initialize-insecure 改为--initialize表示以随机密码初始化mysql,执行完毕后,最后会有一行显示随机密码:

      2022-06-16T08:51:49.101383Z 1 Note A temporary password is generated for root@localhost: (J&cX0pFqw!S

      启动mysql

      bash 复制代码
      #执行完需要回车结束命令
      ./bin/mysqld_safe --user=mysql &
      #测试登录,执行完后提示输入密码,如果是随机密码则输入随机密码回车,空密码则直接回车
      ./bin/mysql -uroot -p

      停止mysql

      bash 复制代码
      #输入密码停止mysql,如果密码丢失只能通过杀进程方式来停止
      /bin/mysqladmin -uroot -p shutdown
    • 修改密码、开机启动、远程登录配置

      • 修改密码

        bash 复制代码
        #执行后输入旧密码则修改成功,空密码直接回车
        ./bin/mysqladmin -uroot -p password '[新密码]'

        也可以登录mysql后使用SQL语句修改:

        • mysql命令行(需要登入mysql> )

          复制代码
             use mysql;
             UPDATE user SET authentication_string = PASSWORD('[新密码]') WHERE user = 'root';
             FLUSH PRIVILEGES;

          UPDATE user SET password = PASSWORD('新密码') WHERE user = 'root'; (5.7之前密码字段叫password)

      • 设置开机启动

        bash 复制代码
        #拷贝启动文件到/etc/init.d,并重命名为mysql
        cp /usr/local/env/mysql/support-files/mysql.server /etc/init.d/mysql
        #添加服务
        chkconfig --add mysql
        #设置开机启动
        chkconfig mysql on
        #查看服务列表
        chkconfig --list

        因为mysql已经被添加到服务中,所以可以使用service mysql start来启动mysql了,相应的服务操作命令:

        #开启mysql服务

        service mysql start

        #查看mysql服务状态

        service mysql status

        #停止mysql服务

        service mysql stop

      • 远程登录

        通过./bin/mysql -uroot -p登录mysql,执行以下SQL:

        mysql 复制代码
        use mysql;
        update user set host='%' where user ='root';
        flush privileges;
        #查看一下是否配置成功
        select host,user from user;
相关推荐
呆萌很11 小时前
MySQL 数据库和表的管理操作(命令行)
数据库·mysql
毕业设计70311 小时前
(免费领源码)基于Python的博物馆研学活动管理系统的设计与实现22724- java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
python·mysql·随机森林·pycharm·django·flask·推荐算法
程序员阿鹏16 小时前
如何实现MySQL分库分表?
数据结构·数据库·sql·mysql·缓存
风哥2号17 小时前
数据库教程FGMT33‑MySQL主从复制项目实施与维护06(MySQL8.4/9.7 MGR组复制)
数据库·mysql
杨云龙UP18 小时前
MySQL Host is blocked because of many connection errors 导致 JDBC 连接失败排查与解决
linux·运维·网络·数据库·sql·mysql·登录失败
程序员梅雨20 小时前
MySQL底层探索(一):什么是脏页?什么是冷热分离?
mysql·面试
闲云野鹤在人间20 小时前
Docker入门|第3章 镜像详解
linux·网络·docker·容器·centos·云计算·php
bksczm1 天前
MySQL基础篇之表的增删查改(CRUD)细则
sql·mysql
莫陌尛.1 天前
Docker MySQL 删表卡死、执行超时(MDL锁阻塞)问题复盘与根治方案
mysql·docker·容器
毕业设计7031 天前
(免费领源码) 基于微信小程序的预制菜商城的设计与实现25172-java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
vue.js·python·mysql·微信小程序·pycharm·微信开发者工具·推荐算法