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语句不同。

相关推荐
小白教程39 分钟前
MySQL数据库的安全性防护
数据库·mysql
Lion Long41 分钟前
CodeBuddy 中国版 Cursor 实战:Redis+MySQL双引擎驱动〈王者荣耀〉战区排行榜
数据库·redis·mysql·缓存·腾讯云·codebuddy首席试玩官·codebuddy
VirusVIP42 分钟前
Windows CMD通过adb检查触摸屏Linux驱动是否被编译
linux·运维·adb
chennalC#c.h.JA Ptho1 小时前
ubuntu studio 系统详解
linux·运维·服务器·经验分享·ubuntu·系统安全
蔡蓝7 小时前
binlog日志以及MySQL的数据同步
数据库·mysql
丢丢丢丢丢丢~8 小时前
apache2的默认html修改
linux·运维·服务器
wusam8 小时前
Linux系统管理与编程20:Apache
linux·运维·服务器·apache·shell编程
我不想当小卡拉米8 小时前
【Linux】操作系统入门:冯诺依曼体系结构
linux·开发语言·网络·c++
ChironW8 小时前
Ubuntu 24.04 LTS系统上配置国内时间同步
linux·运维·服务器·ubuntu
炒空心菜菜8 小时前
SparkSQL 连接 MySQL 并添加新数据:实战指南
大数据·开发语言·数据库·后端·mysql·spark