Linux配置MySQL改密码、导入表、远程连接

前提

已经用LNMP安装了MySQL。

忘记初始密码/初始密码登录不上

服务器命令行输入 mysql -u root -p ,回车后输入密码,登不上去?

打开 /etc/my.cnf,在文档内搜索mysqld定位到[mysqld]文本段
在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程,
保存文档并退出.

重启MySQL
/etc/init.d/mysql restart

重启之后输入mysql即可进入 mysql命令行

改密码流程:
use mysql;
update user set password=password("123456") where user="root";
flush privileges; //命令立即生效
quit;
/etc/init.d/mysql restart

编辑my.cnf,去掉刚才添加的内容,然后重启MySQL。
再次进入mysql就需要输密码了

mysql -u root -p 

查看有几个账户密码

mysql> select user,host,password from user;

导入数据库

show databases;   //显示数据库
create database jbl_777;   //创建数据库
show databases;
use  jbl_777;   //使用数据库
source /home/wwwroot/default/jbl_777/jbl_777.sql;   //导入数据
show tables;  //显示表

允许外部应用(例如Navicat)连接到数据库

1、给远程用户授权

mysql> grant all privileges  on *.* to root@'%' identified by "password";

2、阿里云服务器,安全组,开放了3306 端口。


image.png

3、查看linux防火墙是否开放3306端口

iptables -nL --line-number 
//如果显示ACCEPT,说明允许
//如果显示DROP,说明禁止

4、修改防火墙(如果是DROP)

vim /etc/sysconfig/iptables 
//DROP改成 ACCEPT
//没有这一行的话加上这一行

5、重启防火墙并查看改动结果

service iptables restart 
iptables -nL --line-number 

途中遇到的错误
2003 - Can't connect to MySQL server on
这个是服务器的端口和授权问题

1045 - Access denied for user
这个是用户密码出现错误,参考上边的改密码流程

参考链接:
https://blog.csdn.net/qq_34306360/article/details/80834255
https://www.cnblogs.com/xu-ux/p/12222895.html

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容