站点背景图
头像
Tsingten

偶尔记录一点.

首页 » 技术随笔 » 在CentOS上通过二进制分发文件手动安装Mysql8.0

在CentOS上通过二进制分发文件手动安装Mysql8.0

作者: Tsingten 时间: 98天前 评论: 0 条

# 创建mysql用户组
$> groupadd mysql

# 创建mysql用户,不允许登录shell
$> useradd -r -g mysql -s /bin/false mysql

# 切换到安装目录
$> cd /usr/local

# 解压MySQL安装包
$> tar xvf /path/to/mysql-VERSION-OS.tar.xz

# 创建mysql软链接到解压目录
$> ln -s full-path-to-mysql-VERSION-OS mysql

# 进入mysql目录
$> cd mysql

# 创建数据文件目录
$> mkdir mysql-files

# 设置数据目录所有者为mysql用户和组
$> chown mysql:mysql mysql-files

# 设置数据目录权限为750(用户完全访问,组读执行,其他无权限)
$> chmod 750 mysql-files

# 初始化MySQL数据库
$> bin/mysqld --initialize --user=mysql

# 以mysql用户启动MySQL服务器
$> bin/mysqld_safe --user=mysql &

# 可选:将MySQL启动脚本复制到系统服务目录
$> cp support-files/mysql.server /etc/init.d/mysql.server

以上是Mysql官方文档关于手动安装的指南,但实际上是不够的,可能遇到问题。
编辑/etc/my.cnf

[mysqld]

bind-address=0.0.0.0

port=3306

user=mysql

basedir=/usr/local/mysql

datadir=/usr/local/mysql/mysql-files

socket=/var/lib/mysql/mysql.sock

log-error=/usr/local/mysql/mysql-files/mysql.err

pid-file=/usr/local/mysql/mysql-files/mysql.pid

#character config

character_set_server=utf8mb4

symbolic-links=0

explicit_defaults_for_timestamp=true

# 关闭MySQL的only_full_group_by模式
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

#忽略表名大小写
lower_case_table_names=1

初始化mysqld

./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/mysql-files --user=mysql --initialize

初始化后查看日志获取初始密码

cat /usr/local/mysql/mysql-files/mysql.err

/etc/init.d 目录通常用于存放启动脚本,这些脚本用于管理系统服务的启动、停止和重启。
我们将启动脚本复制到此目录中:

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

在启动了mysqld后,运行启动脚本 service mysql start
添加环境变量export PATH=$PATH:/usr/local/mysql/bin

评论
插入
插入
😀😃😄😁😆😅🤣😂🙂🙃😉😊😇🥰😍🤩😘😗😚😙😋😛😜🤪😝🤑🤗🤭🤫🤔🤐🤨😐😑😶😏😒🙄😬🤥😌😔😪🤤😴😷🤒🤕🤢🤮🤧🥵🥶🥴😵🤯🤠🥳😎🤓🧐😕😟🙁☹️😮😯😲😳🥺😦😧😨😰😥😢😭😱😖😣😞😓😩😫🥱😤😡😠🤬
🖐️