问题1:MySQL安装后,在/tmp/mysqld.log中找不到MySQL密码?
答:出现以上问题的主要原因有两种情况:① 计算机本身安装过MySQL软件,重复安装导致初始化失败 ② 数据库配置异常,忘记创建账号,目录异常等等都可能初始化失败了
初始化成功,在MySQL内部,会产生一个data目录,里面最少要包含mysql文件夹(内置mysql数据库,包含账号、系统等信息)
cd /export/server/mysql
ll data
drwxr-x--- 2 mysql mysql 4096 Apr 20 14:34 '#innodb_redo'
drwxr-x--- 2 mysql mysql 187 Apr 20 14:34 '#innodb_temp'
drwxr-x--- 2 mysql mysql 143 Apr 20 11:06 mysql
-rw-r----- 1 mysql mysql 6 Apr 20 14:34 mysqld.pid
-rw-r----- 1 mysql mysql 26214400 Apr 20 14:34 mysql.ibd
drwxr-x--- 2 mysql mysql 8192 Apr 20 11:06 performance_schema
如果没有这些目录或者文件,就是初始化失败了。
解决方案:删除data目录,然后重新初始化
cd /export/server/mysqlrm -rf databin/mysqld --initialize --user=mysql --basedir=/export/server/mysql &>/tmp/mysqld.log
问题2:MySQL连接报错,ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
答:出现以上问题的主要原因,可能是MySQL软件没有启动 或者 MySQL已经异常启动,但是没有产生套接字。
MySQL软件没有启动
systemctl status mysqld
ll /tmp
systemctl start mysqld
MySQL已经异常启动,但是没有产生套接字
先尝试使用systemctl终止mysqld服务
systemctl stop mysqld
强制终止mysqld(生产环境慎用)
pkill mysqld
systemctl start mysqld
问题3:MySQL登录报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
答:1045是一个比较经典的报错编号,代表密码输入错误,密码不正确。
问题4:mysql、mysql-server、mysql.service、/etc/my.cnf之间关系
