如何在Ubuntu的Linux系统中安装MySQL5.7数据库

  1. 前往MySQL数据库官网链接地址下载5.7数据库。

    1. MySQL :: Download MySQL Community Server (Archived Versions)
  2. 使用ssh的可视化工具将下载的mysql-5.7.40-linux-glibc2.12-x86_64.tar.gz文件上传到Linux服务器,并解压文件
    1.

    bash 复制代码
    tar -zxvf mysql-5.7.40-linux-glibc2.12-x86_64.tar.gz
  3. 删除mysql压缩包并将解压后的数据库文件夹改名称

  4. 在mysql的安装目录中添加my.cnf文件,设置mysql的配置信息
    1.

    sql 复制代码
    [mysqld]
    # 设置3306端口
    port=3306
    # 设置mysql的安装目录
    basedir=/home/dev/dev-install/mysql-5.7.40
    # 设置mysql数据库的数据的存放目录
    datadir=/home/dev/dev-install/mysql-5.7.40/data
    # 允许最大连接数/
    max_connections=10000
    # 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
    max_connect_errors=30
    # 服务端使用的字符集默认为utf8mb4
    character-set-server=utf8mb4
    # 创建新表时将使用的默认存储引擎
    default-storage-engine=INNODB
    socket = /tmp/mysql.sock
    log-error=/home/dev/dev-install/mysql-5.7.40/logs/mysqld.log
    pid-file = /home/dev/dev-install/mysql-5.7.40/logs/mysql.pid
    # 慢日志查询设置
    long_query_time = 10
    slow_query_log_file = /home/dev/dev-install/mysql-5.7.40/logs/mysql-slow.log
    # binlog日志
    server-id=101
    log-bin = /home/dev/dev-install/mysql-5.7.40/binlog/mysql-bin
  5. 在安装目录中新建data、logs、binlog文件夹

  6. 根据自己的安装路径,执行mysqld文件初始化数据库
    1.

    bash 复制代码
    /home/dev/dev-install/mysql-5.7.40/bin/mysqld  --initialize --datadir=/home/dev/dev-install/mysql-5.7.40/data
  7. 进入安装目录的support-files文件夹中,修改mysql.server文件并保存

    1. 修改basedir、datadir参数
    2. 修改图片中原本的conf=/etc/my.cnf为自己设定的值,图片中是加载当前安装目录下的my.cnf文件
  8. 进入support-files文件夹进而启动mysql服务
    1.

    bash 复制代码
    ./mysql.server start
    1. 服务启动成功
  9. 若执行./mysql -uroot -p时出现异常问题./mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory时的处理方案,依次执行下列指令

    bash 复制代码
    sudo apt install apt-file
    sudo apt-file update
    sudo apt install libncurses5
    1. 上面的指令执行完,再次执行./mysql -uroot -p则已经正常运行
  10. 首次进入修改默认的root密码

    1. 修改my.cnf文件,在文件末尾直接添加skip-grant-tables,作用是免密登录数据库。修改完然后保存文件,保存文件之后,先停止mysql服务,然后再启动mysql服务
    2. mysql服务重新启动之后,直接执行./mysql即可正常进入数据库
    3. 修改root密码,123456改为要修改的密码
      1. 切换使用操作mysql数据库
        1.

        sql 复制代码
        use mysql;
      2. 修改密码
        1.

        sql 复制代码
        update user set authentication_string = password("123456") where user = "root";
      3. 刷新数据库
        1.

        sql 复制代码
        flush privileges;
      4. 退出数据库
        1.

        sql 复制代码
        exit;
      5. 退出数据库之后,然后修改my.cnf文件,将skip-grant-tables这一行去掉,然后保存,保存文件之后再把MySQL数据库重启,设置的密码即可正式生效

  11. 若需要设置mysql系统可以远程访问,则需要进入mysql服务执行下列指令
    1.

    sql 复制代码
    use mysql;
    update user set host='%' where user='root';
    flush privileges;
    1. 可视化工具远程测试结果
  12. 若在操作mysql数据库时,mysql数据库提示ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.的解决方案

    1. 需要进入mysql数据库依次执行下列指令,进行重新设置密码即可
    sql 复制代码
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
    flush privileges;
相关推荐
周杰伦fans20 小时前
C# 中的**享元工厂**模式
开发语言·数据库·c#
空空kkk20 小时前
SpringMVC——拦截器
java·数据库·spring·拦截器
J***516820 小时前
MySql中的事务、MySql事务详解、MySql隔离级别
数据库·mysql·adb
wdfk_prog20 小时前
[Linux]学习笔记系列 -- [block]bfq-iosched
linux·笔记·学习
SelectDB20 小时前
Apache Doris 中的 Data Trait:性能提速 2 倍的秘密武器
数据库·后端·apache
i***279521 小时前
Spring boot 3.3.1 官方文档 中文
java·数据库·spring boot
TDengine (老段)21 小时前
TDengine 日期函数 DATE 用户手册
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
刚哥的进化路21 小时前
Linux系统日志管理完全教程:从基础查看 to 集中分析(附实战命令)
运维·自动化运维
互联网小顽童21 小时前
Linux系统进阶管理教程:从基础操作到企业级运维(附实战命令)
运维·自动化运维
LCG元21 小时前
Linux 文本处理三剑客(grep, sed, awk)核心用法与实战
linux