求助数据库连接:ERROR 1045 (28000): Access denied for user (using password: YES)??
其实只要加上主机ip就ok了。
后面需要加-h ServerIPAddr
如:
mysql -u xx -p -h 192.168.1.1然后输入密码,就OK了
随便附上mysql常用的命令(以下内容转载自: 原文地址 http://engyy.com/?action=show&id=127&page=1):
mysql命令行常用命令
第一招、mysql服务的启动和停止
net stop mysql
net start mysql
第二招、登陆mysql
语法如下: mysql -u用户名 -p用户密码
键入命令mysql -uroot -p, 回车后提示你输入密码,输入12345,然后回车即可进入到mysql中了,mysql的提示符是:
mysql>
注意,如果是连接到另外的机器上,则需要加入一个参数-h机器IP
第三招、增加新用户
格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"
如,增加一个用户user1密码为password1,让其可以在本机上登录, 并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入mysql,然后键入以下命令:
grant select,insert,update,delete on *.* to user1@localhost Identified by "password1";
如果希望该用户能够在任何机器上登陆mysql,则将localhost改为"%"。
如果你不想user1有密码,可以再打一个命令将密码去掉。
grant select,insert,update,delete on mydb.* to user1@localhost identified by "";
第四招: 操作数据库
登录到mysql中,然后在mysql的提示符下运行下列命令,每个命令以分号结束。
1、 显示数据库列表。
show databases;
缺省有两个数据库:mysql和test。 mysql库存放着mysql的系统和用户权限信息,我们改密码和新增用户,实际上就是对这个库进行操作。
2、 显示库中的数据表:
use mysql;
show tables;
3、 显示数据表的结构:
describe 表名;
4、 建库与删库:
create database 库名;
drop database 库名;
5、 建表:
use 库名;
create table 表名(字段列表);
drop table 表名;
6、 清空表中记录:
delete from 表名;
7、 显示表中的记录:
select * from 表名;
第五招、导出和导入数据
1. 导出数据:
mysqldump --opt test > mysql.test
即将数据库test数据库导出到mysql.test文件,后者是一个文本文件
如:mysqldump -u root -p123456 --databases dbname > mysql.dbname
就是把数据库dbname导出到文件mysql.dbname中。
2. 导入数据:
mysqlimport -u root -p123456 < mysql.dbname。
不用解释了吧。
3. 将文本数据导入数据库:
文本数据的字段数据之间用tab键隔开。
use test;
load data local infile "文件名" into table 表名;
第六招、乱码问题
MySQL 的字符集支持(Character Set Support)有两个方面:字符集(Character set)和排序方式(Collation)。对于字符集的支持细化到四个层次: 服务器(server),数据库(database),数据表(table)和连接(connection)。
查看系统的字符集和排序方式的设定可以通过下面的两条命令:
查看字符集:
1. mysql> SHOW VARIABLES LIKE 'character_set_%';
显示字符集设置如下:
1. +--------------------------+----------------------------+
2. | Variable_name | Value |
3. +--------------------------+----------------------------+
4. | character_set_client | latin1 |
5. | character_set_connection | latin1 |
6. | character_set_database | latin1 |
7. | character_set_results | latin1 |
8. | character_set_server | latin1 |
9. | character_set_system | utf8 |
10. | character_sets_dir | /usr/share/mysql/charsets/ |
11. +--------------------------+----------------------------+
查看排序方式(Collation)
1. mysql> SHOW VARIABLES LIKE 'collation_%';
显示默认值:
1. +----------------------+-------------------+
2. | Variable_name | Value |
3. +----------------------+-------------------+
4. | collation_connection | latin1_swedish_ci |
5. | collation_database | latin1_swedish_ci |
6. | collation_server | latin1_swedish_ci |
7. +----------------------+-------------------+
上面列出的值就是系统的默认值。如果你奇怪系统怎么默认是latin1的瑞典语排序方式,原因是MySQL由瑞典的T.c.X.DataKonsultAB公司(目前公司名称为MySQL AB)开发,不用再多说了吧。
当我们按照原来的方式通过PHP存取MySQL数据库时,就算设置了表的默认字符集为utf8并且通过UTF-8编码发送查询,你会发现存入数据库的仍然是乱码。问题就出在这个connection连接层上。解决方法是在发送查询前执行一下下面这句:
SET NAMES ‘utf8′;
它相当于下面的三句指令:
1. SET character_set_client = utf8;
2. SET character_set_results = utf8;
3. SET character_set_connection = utf8;
再试试看,正常了吧?
就是连接之后加个查询
1. $this->query(”SET NAMES ‘utf8'”);
character_set_client,character_set_results,character_set_connection三个运行变量是造成乱码的关键。mysql把客户端提交的查询由character_set_client转换为 character_set_connection
,由于默认网页提交的查询是gb2312(表单页面meta里可以看到),而mysql默认将其当作utf8(可以查到此时的 character_set_client=utf8),所以必然乱码。同理,mysql返回的结果是已经转换成 character_set_results编码的(与表的编码无关),同样默认是utf8,而网页页面把它当gb2312处理,所以必然有标题等由数据库读出的字段是乱码而其他部门文字不乱码的现象。
分享到:
相关推荐
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 解决: 1.打开在创建mysql容器时挂载的conf目录下的mysqld.cnf(如下文件) 我创建docker的姿势 2.进入mysqlId.cnf文件中在...
如果遇到`django.db.utils.OperationalError: (1045, "Access denied for user ‘账号’@’localhost’ (using password: YES)")`这样的错误,这通常意味着Django无法使用指定的凭据连接到MySQL数据库。错误信息清楚...
ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: NO) 第一步:编辑mysql安装目录中的配置文件my.ini,在[mysqld]这个条目下加入 skip-grant-tables 如下图: 保存退出后 第二...
首先是不知道怎么忽然mysql用命令行,workbench都登录不了,都提示’Access denied for user ‘root’@’localhost’。 数据库卸载重装了几次都不行。好像感觉数据清理不干净。解决的过程遇到的坑,这里记录分享下。...
在新安装MySQL后,有时可能会遇到登录问题,特别是当你尝试使用`mysql -uroot -p`命令并输入默认密码时,系统返回`ERROR 1045 (28000): Access denied for user`错误,这意味着你的登录凭据无效或者你没有足够的权限...
在使用MySQL数据库时,有时会出现一个常见的错误:`ERROR 1045 (28000): Access denied for user "root"@"localhost" (using password: YES)`。这个错误表明,你尝试用root用户登录MySQL,但系统拒绝了你的访问,...
在MySQL中,错误号1045 (28000)通常表示“Access denied for user”,这是一个常见的权限问题,意味着指定的用户无法使用提供的密码登录数据库服务器。本篇文章将详细探讨这个问题的原因以及两种可能的解决方案。 #...
在使用MySQL数据库时,有时会出现一个常见的错误,即"ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)"。这个错误表明,尝试以root用户身份登录MySQL服务器时,由于认证失败...
环境变量配置错误 mysql 命令行错误 ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: N
MySQL ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO) 的解决办法和原因 这两天下载了MySQL5.7.11进行安装,发现到了初次使用输入密码的时候,不管怎样都进不去,即使...
Unhandled rejection SequelizeAccessDeniedError: Access denied for user 'lupeng'@'localhost' (using password: YES) 这是Node在使用Sequlize连接Mysql数据时报的错,关键看冒号后面的错误:访问拒绝,关键是...
本教程将详述如何在Ubuntu 18.0.4上安装MySQL,并解决在登录时遇到的"ERROR 1698 (28000): Access denied for user 'root'@'localhost'"的问题。 首先,安装MySQL服务可以使用Ubuntu的包管理器`apt`。执行以下命令...
这通常表现为"ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)"的错误提示。这个错误意味着MySQL拒绝了root用户的登录尝试,因为没有提供有效的密码。 首先,我们要明确的是...
本文分析了mysql登录报错提示:ERROR 1045 (28000)的解决方法。...ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 二、原因:数据库中存在空用户所致 三、解决方
MySQL密码忘了,可以进行重置设置。安全模式的进入,操作。
ERROR 1045 (28000): Access denied for user ‘ODBC’@’localhost’ (using password: NO) ERROR 1045 (28000): Access denied for user ‘ODBC’@’localhost’ (using password: YES)—–这次是这个问题 windows...
主要介绍了MySQL ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) 的原因分解决办法的相关资料,需要的朋友可以参考下
主要给大家介绍了如何解决mysql在创建数据库后出现:Access denied for user 'root'@'%' to database 'xxx'的错误提示,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。