更新
sudo dnf update

  

安装MySQL服务器:这边安装的是默认8.0

sudo dnf install mysql-server
启动MySQL服务:

sudo systemctl start mysqld
确保MySQL服务设置为在启动时自动启动:

sudo systemctl enable mysqld
运行初始安全脚本来设置root用户密码和调整安全选项:

sudo mysql_secure_installation
登录到MySQL以确保一切正常:

mysql -u root -p

输入你在安全脚本中设置的密码。

到这一步基本安装完成但是

mysql8.0之后,lower_case_table_names 配置必须在安装好 MySQL 后,初始化 mysql 配置时才有效。一旦 mysql 启动后,再设置是无效的,而且启动报错。

需要重新初始化MySQL数据库,并且在初始化过程中,在初始化之前将lower_case_table_names = 1写入到my.cnf文件中

 在修改配置之前,请先把 mysql 服务停止
systemctl stop mysqld.service
删除日志文件
rm /var/log/mysqld.log
进到目录下,循环删除
cd /var/lib/mysql
ls
rm -rf * 
ls
删除原目录,创建数据库目录并授权
rm -rf /var/lib/mysql
cd /var/lib
mkdir mysql
授权
chown -R mysql:mysql mysql

 

初始化MySql
mysqld --defaults-file=/etc/my.cnf --initialize --user=mysql --basedir=/var/lib/mysql --datadir=/var/lib/mysql
启动服务
systemctl start mysqld.service
systemctl status mysqld.service

 

查找文件
 find / -name mysqld.log
查看密码
cat /var/log/mysql/mysqld.log |grep temp

 然后再次登录

mysql -uroot -p

输入密码

创建用户设置远程访问
CREATE USER 'root'@'%' IDENTIFIED BY '1234edsfsdf+';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

etc/my.cnf修改一下,忽略大小写

#
# This group is read both both by the client and the server
# use it for options that affect everything
#
[client-server]

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

[mysqld]
lower_case_table_names=1

重启服务就不会报错

 

posted on 2024-08-07 16:35  啊修  阅读(58)  评论(0编辑  收藏  举报