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;
相关推荐
sleP4o2 小时前
Python操作MySQL
开发语言·python·mysql
大熊程序猿3 小时前
python 读取excel数据存储到mysql
数据库·python·mysql
知识分享小能手3 小时前
mysql学习教程,从入门到精通,SQL DISTINCT 子句 (16)
大数据·开发语言·sql·学习·mysql·数据分析·数据库开发
lamb张3 小时前
MySQL锁
数据库·mysql
躺平的花卷4 小时前
Python爬虫案例六:抓取某个地区某月份天气数据并保存到mysql数据库中
数据库·爬虫·python·mysql
cheri--5 小时前
adb install失败: INSTALL_PARSE_FAILED_NO_CERTIFICATES
adb
飞翔的佩奇6 小时前
xxl-job适配sqlite本地数据库及mysql数据库。可根据配置指定使用哪种数据库。
数据库·spring boot·mysql·sqlite·xxl-job·任务调度
如意机反光镜裸7 小时前
CentOS7安装MySQL教程
数据库·mysql
冰镇毛衣7 小时前
1.4 MySql配置文件
数据库·mysql
计算机学姐8 小时前
基于python+django+vue的影视推荐系统
开发语言·vue.js·后端·python·mysql·django·intellij-idea