我们来学mysql -- 安装8.4版本

下载

  • 地址
  • 选择安装包
    • 查看OS位数 getconf LONG_BIT
      在这里插入图片描述在这里插入图片描述
  • 二进制安装包说明
    • 二进制包的文件名会包含 linux 或 glibc 等字样
    • 如:mysql-8.4.4-linux-glibc2.28-x86_64.tar.xz
    • 二进制包含 bin 目录,其中包含可执行文件(如 mysqld、mysql 等)

解压

tar -xvJf mysql-8.4.4-linux-glibc2.28-x86_64.tar.xz  -C /u01/app/oracle2/mysql-8.4.4

在这里插入图片描述

用户

  • 误区
    • 不需要通过mysql用户登录进行安装
    • root用户执行安装,创建用户、组和设置目录权限
    • mysql用户作用:运行mysql时使用

  • 为何不用root用户运行
    • 可能涉及到系统安全。如果MySQL以root用户运行,一旦有安全漏洞,攻击者可能获得root权限,对整个系统造成威胁

  • 查看用户是否存在
    • id mysql
      在这里插入图片描述
  • 创建用户及用户组

目录&用户权限

  • 与解压目录平级
    • 创建data ,log , tmp 文件夹
    • mkdir /u01/app/oracle2/{dbdata,tmp,logs} -pv
  • 目录权限分配给mysql用户和组
    • chown -R mysql.mysql /u01/app/oracle2
      在这里插入图片描述

my.cnf

  • 解压目录中没有这个文件
  • 已创建,各种必要命令很全
  • 在文章头部,自行下载
    在这里插入图片描述

初始化

./mysqld --defaults-file=/u01/app/oracle2/mysql-8.4.4/my.cnf --basedir=/u01/app/oracle2/mysql-8.4.4 --datadir=/u01/app/oracle2/dbdata --user=mysql --initialize
  • 创建 MySQL 内部使用的系统表
  • 在log目录下创建了 mysqld_error.log mysqld_slow.log
    在这里插入图片描述
  • 初始化用户权限,通常会创建一个默认的 root 用户,并生成一个临时密码
  • 在**/log/mysqld_error.log
    在这里插入图片描述

普通启动

/u01/app/oracle2/mysql-8.4.4/bin/mysqld --basedir=/u01/app/oracle2/mysql-8.4.4 --datadir=/u01/app/oracle2/dbdata --plugin-dir=/u01/app/oracle2/mysql-8.4.4/lib/plugin --user=mysql --log-error=/u01/app/oracle2/logs/mysqld_error.log --open-files-limit=10240 --pid-file=/u01/app/oracle2/mysql-8.4.4/mysqld.pid --socket=/u01/app/oracle2/mysql-8.4.4/mysql.sock --port=3308
  • 命令行参数优先:命令行中指定的参数会覆盖配置文件中的同名参数
  • 如果没有在命令行中指定某些参数,MySQL 会按照优先级顺序查找配置文件
    • /etc/my.cnf
    • /etc/mysql/my.cnf
    • /usr/local/mysql/my.cnf
    • ~/.my.cnf(当前用户的家目录中的配置文件)

safe启动

/bin/sh /u01/app/oracle2/mysql-8.4.4/bin/mysqld_safe  --defaults-file=/u01/app/oracle2/mysql-8.4.4/my.cnf --datadir=/u01/app/oracle2/dbdata --pid-file=/u01/app/oracle2/mysql-8.4.4/mysqld.pid
  • 是一个用于启动和监控 mysqld 进程的sh脚本
  • /bin/sh 确保脚本在正确的 shell 环境中执行,避免因默认 shell 不同导致的兼容性问题
    在这里插入图片描述
  • 会在 mysqld 进程崩溃时自动重新启动它
    在这里插入图片描述

检查启动用户

在这里插入图片描述
在这里插入图片描述

登录

/u01/app/oracle2/mysql-8.4.4/bin/mysql -h 127.0.0.1  -P 3308 -u root -p
  • 查看版本
  • 执行报错 : You must reset your password using ALTER USER statement before executing this statement.
  • 修改密码:ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘new_password’;
    在这里插入图片描述

远程登录用户’root’@‘%’

  • 在 MySQL 中,用户是由用户名和主机名共同定义的。
  • root@localhost 和 root@% 是两个不同的用户,即使用户名相同。
  • 要允许 root 用户从远程连接,创建一个新的用户 root@%,并授予其相应的权限
    • CREATE USER ‘root’@‘%’ IDENTIFIED BY ‘root@000’;
  • 查看权限
    • SELECT * FROM information_schema.USER_PRIVILEGES WHERE GRANTEE = “‘root’@‘%’”;
      在这里插入图片描述
  • 远程可登录,打不开数据库
    在这里插入图片描述
  • 授权
    • GRANT ALL PRIVILEGES ON . TO ‘root’@‘%’ WITH GRANT OPTION;
      在这里插入图片描述
      在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

UCoding

说话好听~~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值