mysql在linux下的安装详细步骤

文章目录


前言

系统环境Centos7.

一、从官网下载mysql8

官网地址:https://dev.mysql.com/downloads/mysql/

如果操作系统是centos可以选择Linux-Generic

二、安装

  • 将下载的mysql tar包解压

    tar -xvf mysql mysql-8.x.x-linux-glibc2.17-x86_64.tar.xz

  • 更改目录名字

    mv /opt/mysql mysql-8.x.x-linux-glibc2.17-x86_64 /opt/mysql

  • 创建mysql用户和用户组

    groupadd mysql

    useradd -r -g mysql mysql

    #useradd -r参数表示mysql用户是系统用户,不可用于登录系统

  • 创建data目录,并更改权限

    mkdir -p /opt/mysql/data

    chown -R mysql:mysql /opt/mysql/data

  • 修改mysql配置文件my.cnf

    vi /etc/my.cnf

    内容如下:

    mysqld

    #bind-address=0.0.0.0

    port=3306

    user=mysql

    basedir = /opt/mysql

    datadir=/opt/mysql/data

    socket=/tmp/mysql.sock

    log-error=/opt/mysql/data/mysql.err

    pid-file = /opt/mysql/data/mysqld.pid

    #character config

    character_set_server=utf8mb4

    explicit_defaults_for_timestamp=true

  • 初始化 mysqld

    cd /opt/mysql

    ./bin/mysqld --initialize --user=mysql --basedir=/opt/mysql/ --datadir=/opt/mysql/data/

    初始化完成之后,查看日志

    /opt/mysql/data/mysqld.err

    找到以下内容,其中gkOQy3RC:4u?是初始化时生成的随机密码,需要记住,修改密码时会用到

    A temporary password is generated for root@localhost: gkOQy3RC:4u?

  • 把启动脚本放到开机初始化目录

    cp support-files/mysql.server /etc/init.d/mysqld

  • 启动mysql服务

    service mysqld start

  • 登录mysql,密码为初始密码

    cd /opt/mysql

    ./bin/mysql -u root -p

  • mysql5.7修改密码步骤

    mysql> set password=password('Abcddd@20244');

    #修改远程连接并生效

    mysql> grant all privileges on . to root@'%' identified by 'Abcddd@20244';

    mysql> flush privileges;

  • mysql8 修改密码步骤

    mysql> alter user 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Abcddd@20244';

    mysql> flush privileges;

    #修改远程连接并生效

    mysql> update user set host='%' where user='root';

    mysql> flush privileges;


总结

mysql5与mysql8在安装时,不同的地方在于修改密码的sql语句不同。

相关推荐
DemonAvenger42 分钟前
NoSQL与MySQL混合架构设计:从入门到实战的最佳实践
数据库·mysql·性能优化
程序新视界1 小时前
如何在MySQL中创建聚集索引?
mysql
AAA修煤气灶刘哥12 小时前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql
程序新视界13 小时前
学习MySQL绕不开的两个基础概念:聚集索引与非聚集索引
mysql
RestCloud16 小时前
跨境数据传输:ETL如何处理时区与日期格式差异
mysql·api
得物技术19 小时前
MySQL单表为何别超2000万行?揭秘B+树与16KB页的生死博弈|得物技术
数据库·后端·mysql
xiaok20 小时前
mysql中怎么创建一个可控权限数据库账号密码给到开发者
mysql
轻松Ai享生活1 天前
5 节课深入学习Linux Cgroups
linux
christine-rr1 天前
linux常用命令(4)——压缩命令
linux·服务器·redis
ByteBlossom1 天前
MySQL 面试场景题之如何处理 BLOB 和CLOB 数据类型?
数据库·mysql·面试