GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.0.100' IDENTIFIED BY '' WITH GRANT OPTION; mysql> -- @'192.168.1.100'可以替换为@‘%’就可任意ip访问,当然我们也可以直接用 UPDATE 更新 root 用户 Host, 但不推荐, SQL如下: mysql> -- UPDATE user SET Host='192.168.1.100' WHERE User='root' AND Host='localhost' LIMIT 1;
flush privileges;
mysql 登录报错:ERROR 1045 (28000)
1、停用mysql服务:# service mysql stop2、输入命令:# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &3、登入数据库:# mysql -u root mysql4、mysql> use mysql;5、mysql> select user,host,password from user; 结果如下:+------+-----------------------+----------+| user | host | password |+------+-----------------------+----------+| root | % | mima || root | localhost.localdomain | mima || root | 127.0.0.1 | mima || | localhost | || | localhost.localdomain | |+------+-----------------------+----------+6、将上面查询出来的空用户删除:mysql> delete from user where user='';7、退出数据库:mysql> quit8、启动mysql服务:# service mysql start9、重新用命令‘mysql -u root -p’登录,OK!mysql.sock丢失
一、解决var/run/mysqld没有pid和sock文件
MySQL下mysql.sock丢失丢失的原因一般是因为配置文件不一致的原因,mysqld 错误启动,mysqld_safe 会清除一次mysql.sock 。解决方法是:
判断一般人解决故障时没有切换到mysql用户,造成权限有问题,无法创建mysql授权表,所以也就无法创建/tmp/mysql.sock 和hostname.pid文件。因此,总结解决方法如下:
#su mysql // root 用户也是可以的
$/usr/local/bin/mysql_install_db //到bin目录执行,重建授权表
$/usr/local/bin/mysqld_safe &
mysql -uroot -p //测试
mysq>bye;
$
文件已经解决,重新生成新的 /tmp/mysql.sock 和 hostname.pid
var/
$su root
二、解决mysql.sock文件路径不对
1.在/var/lib/mysql创建一个link:ln -s /var/lib/mysql/mysql.sock /path/to/mysql/mysql.sock
2.在root权限下修改my.cnf文件(/etc/mysql/my.cnf),指定正确的路径
3.1和2任选其一就可以
#1045 无法登录 mysql 服务器
检查PHPmyadmin 配置文件,有可能host限制了127.0.0.1或host所致,设为空
find 命令
-type
f // 普通文件
d //目录文件
l //链接文件
b //块设备文件
c //字符设备文件
p //管道文件
s //socket文件