mysql的一些密码错误问题,并从windows登录linux主机的mysql

mysqld_safe --skip-grant-tables&

mysql -u root mysql

可以修改密码:

mysql>update mysql.user set authentication_string=password('admin') where user='root' and Host ='localhost';

mysql>flush privileges;

之后重新进入set一下。

在linux中:

首先使用 :mysql>     update user set host='%' where user = 'root'; 

mysql>flush privileges; 

在window上:

cmd:   mysql.exe -P 3306 -h 10.108.115.221 -u root -p

一般情况下Mysql从window迁移到linux的时候,网上都会有标准的教程如下:

1) 在windows平台上进入/mysql/bin目录(假设你的数据库名字是mydata)
      执行mysqldump 命令将你的数据库导出,具体命令如下:      
      mysqldump -u root - h localhost -p -r c://mydata.txt -B mydata
      执行此命令的结果是:在c:/下生成一个文本文件

(2)将mydata.txt这个文件上传到linux下的某个文件夹下(假如放在/home/installsoft 下),
     在linux平台上启动mysql,执行./mysql -u root -p 命令进入mysql 客户端程序
     执行如下命令:   
     mysql>source /home/installsoft/mydata.txt  即可成功完成迁移

但是很多时候迁移过去的数据 会出现各种各样的问题,主要可能的原因是,迁移过去的字符编码可能出现了问题 :

最佳的方案是现将两边的字符编码设置成相同的编码,然后将数据库迁移过去,设置编码的方法如下:

首先查看字符编码的命令:show variables like 'character%';

然后对比在window和linux上面的字符编码是否一致,如果不一致,可以用如下mysql命令解决:

set character_set_client=gb2312解决。

character_set_client可以换成其它的字符集,gb2312也可以换成其它的字符编码。

--------------------------------------------------------------------------------------------------------

数据库启动 service mysql start

mysql -uroot -p 

admin

原文地址:https://www.cnblogs.com/bob-wzb/p/5288262.html