一、安装完MySQL之后找不到初始密码
1、安装完MySQL之后初始密码一般情况位于/var/log/mysqld/mysqld.log
此时可以获取初始化的密码
cat /var/log/mysqld.log | grep password;
或者
cat /var/log/mysqld/mysqld.log
2、出现cat: /var/log/mysqld/mysqld.log: No such file or directory时
可以进文件夹下面查看
cd /var/log/mysqld/
如果没有mysqld.log 时
一般情况是没有初始化数据库
初始化数据库:
mysqld --initialize --console;
mysqld --initialize --console 是 MySQL 数据库服务器的一个命令,用于初始化 MySQL 数据目录并生成初始的系统表,这是在首次安装 MySQL 时执行的一步。
解释一下这个命令的各个部分:
mysqld: 这是 MySQL 服务器的守护进程(daemon)的名称。它是 MySQL 数据库管理系统的核心组件,负责处理数据库的请求和管理数据。
--initialize: 这个选项告诉 MySQL 服务器执行初始化操作。在首次安装 MySQL 或者在创建新的数据目录时,这个选项会生成初始的系统表结构,并设置必要的权限和配置。
--console: 这个选项将输出信息显示在控制台(命令行界面),而不是写入日志文件。这对于查看初始化过程中的错误或警告信息很有用。
执行这个命令后,MySQL 服务器会在指定的数据目录中创建必要的文件和目录,生成系统表以存储关于数据库的元数据(metadata),并设置初始的权限和配置。这是安装和配置 MySQL 的一部分,确保数据库服务器能够正常运行
3、产看初始密码
在文件夹下面直接查看mysqld.log的内容
cat mysqld.log
//或者
cat /var/log/mysqld.log | grep password;
初始密码一般情况像这样子显示: A temporary password is generated for root@localhost: j9csL>9,.6ax 初始密码为:j9csL>9,.6ax
4、找到初始密码之后连接数据库
mysql -u root -p
当连接数据库之后又报错
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
表示 MySQL 客户端无法通过指定的 MySQL 服务器 socket 连接到本地 MySQL 服务器。
此时是权限问题,修改权限:
chown -R mysql:mysql /var/lib/mysql
二、一般情况安装顺序
//安装软件包
yum install mysql-server
//初始化数据库
mysqld --initialize --console;
//修改权限
chown -R mysql:mysql /var/lib/mysql
//重启服务器
systemctl start mysqld
//查看初始密码
cat /var/log/mysqld.log | grep password;
//或者
cat /var/log/mysqld.log
//连接数据库
mysql -u root -p