centos安装mysql8

检查是否有mariadb

c 复制代码
rpm -qa|grep mariadb
rpm -e --nodeps mariadb-server

安装mysql-8.0.31-el7-x86_64.tar.gz包

安装mysql-8.0.31-el7-x86_64.tar.gz包

c 复制代码
cd data

tar -xvf  mysql-8.0.31-el7-x86_64.tar.gz

mv mysql-8.0.31-el7-x86_64 mysql 

依赖安装

复制代码
 报错解决,安装依赖 yum install -y libaio 
还有报错,安装依赖 yum -y install numactl

修改mysql配置

vi /etc/my.cnf 覆盖以下全部内容,注意格式

c 复制代码
[client]
port=3306
socket=/data/tmp/mysql/mysql.sock

[mysqld]
port=3306
user=mysql
socket=/data/tmp/mysql/mysql.sock
basedir=/data/mysql
datadir=/data/mysql/data
log-error=error.log 

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
max_connections = 4096

transaction_isolation = READ-COMMITTED
character-set-server = utf8mb4
#collation-server = utf8mb4_general_ci
collation-server = utf8mb4_bin
lower_case_table_names = 1

#生产环境注释
skip-grant-tables

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

[mysqld_safe]
log-error=/data/tmp/mysql/log/mysqld.log
pid-file=/data/tmp/mysql/run/mysqld/mysqld.pid


#log-error=/var/log/mysqld.log
#pid-file=/var/run/mysqld/mysqld.pid


#my.ini配置文件中更改允许的最大错误连接数
max_connect_errors = 8000

初始化mysql配置

复制代码
groupadd mysql
$> useradd -r -g mysql -s /bin/false mysql
$>		mkdir -p /data/tmp/mysql/log 
$>        touch /data/tmp/mysql/log/mysqld.log 
$>       chown -R mysql:mysql /data/tmp/mysql 
$>       chown -R mysql:mysql /data/mysql
$>       chmod -R 755 /data/tmp/mysql /data/mysql
$> cd /usr/local
$> tar xvf mysql-8.0.31-el7-x86_64.tar.gz
$> ln -s mysql-8.0.31-el7-x86_64.tar.gz mysql
$> cd mysql
$> bin/mysqld --initialize --user=mysql
$> bin/mysql_ssl_rsa_setup
$> bin/mysqld_safe --user=mysql &
# Next command is optional
$> cp support-files/mysql.server /etc/init.d/mysql.server

/etc/init.d/mysql.server start

快捷链接

复制代码
export PATH=${PATH}:/data/mysql/bin

修改密码

复制代码
$> mysql
mysql> FLUSH PRIVILEGES;
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

注释掉/etc/my.cnf文件的skip-grant-tables

修改host域及密码修改

复制代码
  mysql -u root -p  (密码登陆)
  alter user 'root'@'localhost' identified by '123456';
  use mysql;
  update user set host='%' where user='root';
  flush privileges;

root忘记密码

开启skip-grant-tables

同上面的修改密码一样,不过得知道host域

复制代码
mysql> ALTER USER 'root'@'%' IDENTIFIED BY 'MyNewPass';
相关推荐
杨云龙UP12 小时前
MySQL 数据库常用备份工具对比:mysqldump、mydumper 与 XtraBackup
linux·运维·服务器·数据库·mysql·dba·备份恢复
风曦Kisaki14 小时前
Kubernetes(K8s)笔记Day06: 持久化存储(emptyDir,hostPath,NFS),PV 和 PVC,StorageClass存储类
linux·运维·笔记·云原生·容器·kubernetes
唐诺14 小时前
Android USB ADB 调试方案完全解析
android·adb·usb
_艾伦 耶格尔.14 小时前
基础I/O
linux
心灵Haven15 小时前
Centos7 + Mysql8.0
mysql·centos
fb_1234517 小时前
Linux磁盘分区从入门到实操:MBR_GPT全解析+分区工具实战指南
java·linux·gpt
深念Y17 小时前
随身WiFi设备记录
linux·嵌入式·无线·射频·随身wifi·zte
柒号华仔18 小时前
【LINUX】Linux从闹钟到高精度定时器的实现
linux
深爱水瓶 血影S狂风21 小时前
函数调用过程探究
linux·运维·服务器
酷可达拉斯21 小时前
Linux操作系统-磁盘空间使用率100%如何处理?
linux·运维·服务器·云计算·bash