1:CentOS 6.4 通过yum 安装mysql 后无法通过root 进入的问题,,这是似乎是因为安装的时候有一个初始密码,这里直接重置密码
2:启动mysql (根目录下启动) service mysqld start(这里安装的是5.7 ,可能其他版本启动方法不一样)
3:启动后查看 mysql进程信息 ,获取mysqld_safe 的安装目录
[root@MyServer ~]# ps -ef | grep -i mysql(这里一定要在~ 目录下)
1:出现以下信息
root 8138 1 0 16:35 ? 00:00:00 /bin/sh /usr/bin/mysqld_safe --skip-grant-tables
mysql 8285 8138 0 16:35 ? 00:00:02 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --skip-grant-tables --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock
root 9267 9082 0 16:54 pts/2 00:00:00 mysql -u root -p
root 9851 9746 0 17:07 pts/4 00:00:00 grep -i mysql
2: 可以看到 mysqld_safe的安装位置: /usr/bin/mysqld_safe
3:执行命令,停止mysql
[root@MyServer ~]# service mysqld stop
4:以安全方式启动mysql
[root@MyServer ~]# /usr/bin/mysqld_safe --skip-grant-tables >/dev/null 2>&1&
5:如果没出现mysql ,首先输入mysql 然后会出现“mysql>”提示符后输入(5.7以后 是authentication_string,之前版本可能是password)
update user set authentication_string=password('xxx') where User = 'root'; 可能会提示 No database selected, 这里要输入 use mysql 选择 mysql 数据库
6:刷新系统权限表
flush privileges;
7:退出
exit;
8:使用mysql -uroot -p登录mysql 的时候明明登录进去了,缺还提示需要密码 ,这时候要执行9以后的步骤
You must reset your password using ALTER USER statement before executing this statemen
9: mysql> SET PASSWORD = PASSWORD('xxxx'); 这句话重新设置一次密码,完成以后就可以操作表了
Linux下配置Mysql允许远程访问详解
1:登录以后,切换到mysql 数据库
mysql> use mysql;
2.查看用户表 :
SELECT `Host` , `User` FROM user;
3.更新用户表 :
UPDATE user SET `Host` = '%' WHERE `User` = 'root' LIMIT 1;
4:强制刷新权限 :
flush privileges;
完成以上步骤即可远程连接数据库
其中%的意思是允许所有的ip远程访问,如果需要指定具体的某个ip就写上具体的ip即可
网友评论