MySQL8 安装文档

分享 师兄真的稳 ⋅ 于 2024-12-10 17:32:08 ⋅ 最后回复由 青牛 2024-12-10 18:37:52 ⋅ 105 阅读
  1. 官方下载MySQL
    MySQL :: Download MySQL Community Server (Archived Versions)
  2. 检查并清除系统自带的MySQL 1. 先查看mysql是否存在

    rpm -qa|grep -i mysql

    如果存在,先停止MySQL,删除所有服务

    find / -name mysql # 删除出现的所有文件

  3. 解压安装MySQL 解压 mysql-8.4.2-linux-glibc2.17-x86_64.tar.xz

    tar xvJf mysql-8.4.2-linux-glibc2.17-x86_64.tar.xz

重命名

mv mysql-8.4.2-linux-glibc2.17-x86_64/ mysql8

进入MySQL根目录

cd mysql8

创建data文件

mkdir data

data目录需要授权。后续启动mysql可能会报错

chmod -R 755 /app/mysql8/data

  1. 创建MySQL组和用户并授权
    groupadd mysql 创建MySQL用户

    useradd -g mysql mysql

授权 chown -R “mysql组名”.“mysql用户名” “mysql安装根目录”

chown -R mysql.mysql /app/mysql8

  1. 初始化 进入MySQL的bin目录进行初始化

    ./mysqld --user=mysql --basedir=/app/mysql8 --datadir=/app/mysql8/data --lower-case-table-names=1 --initialize

    –lower-case-table-names=1 即设置不区分表明大小写 root@localhost: mi>jk?_Mg8OL 初始化成功后会生成初始密码
  2. 修改MySQL配置文件
    vi /etc/my.cnf

[mysqld]
port=3306
basedir=/app/mysql8/
datadir=/app/mysql8/data/
socket=/tmp/mysql.sock
character-set-server=UTF8MB4
symbolic-links=0
lower_case_table_names=1

:wq # 保存退出

  1. 添加服务到系统 进入mysql根目录

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

  2. 授权并添加服务 授权

    chmod +x /etc/init.d/mysql

添加服务

chkconfig -add mysql

  1. 启动MySQL
    service mysql start 登录MySQL

    bin/mysql -umsyql -p

登录MySQL时提示错误:error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
该错误的原因是因为所依赖的libncurses.so版本问题,默认依赖的版本是libncurses.so.5,但是系统上libncurses.so的版本不是5导致的。可以在/usr/lib64文件夹下查找当前系统的libncurses.so版本,比如libncurses.so.6.1。
sudo ln -s /usr/lib64/libncurses.so.6.1 /usr/lib64/libncurses.so.5
同理,可以用类似方法解决libtininfo.so等问题。

  1. 将MySQL命令添加到服务 这一步是为了能在任何地方通过用户名和密码登录MySQL

    ln -s /app/mysql8/bin/mysql /usr/bin

  2. 修改密码 先使用之前初始化拿到的临时密码登录

    mysql -uroot -p

重置密码

ALTER user 'root'@'localhost' IDENTIFIED BY '123456';
FLUSH PRIVILEGES;

  1. 解决本地无法连接远程虚拟机mysql服务
    mysql -uroot -p
    use mysql;
    update user set Host = '%' where user = 'root';
    FLUSH PRIVILEGES;
  2. 设置mysql开机启动 重新加载systemd配置

    sudo systemctl daemon-reload

    停止MySQL

    service mysql stop

    使用systemctl启动MySQL

    systemctl start mysql

    设置开机启动

    systemctl enable mysqld

版权声明:原创作品,允许转载,转载时务必以超链接的形式表明出处和作者信息。否则将追究法律责任。来自海汼部落-师兄真的稳,http://hainiubl.com/topics/76589
成为第一个点赞的人吧 :bowtie:
回复数量: 1
  • 青牛 海汼部落创始人,80后程序员一枚,曾就职于金山,喜欢倒腾技术做产品
    2024-12-10 18:37:52

    建议使用markdown调整一下文本格式,可以给加精处理

暂无评论~~
  • 请注意单词拼写,以及中英文排版,参考此页
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,可用Emoji的自动补全, 在输入的时候只需要 ":" 就可以自动提示了 :metal: :point_right: 表情列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板黏贴上传, 格式限制 - jpg, png, gif,教程
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
Ctrl+Enter