MySQL问题记录

1、Can't connect to MySQL server on localhost (10061)

问题描述:在命令行输入 mysql -u root -p 登录mysql,返回”Can't connect to MySQL server on localhost (10061)”错误

 

问题原因:mysql没有启动。

 

解决方法:1、将mysql加入到Windows的服务中。切换到mysql安装目录下的bin文件夹,命令行运行"mysqld --install"

1 C:\Program Files\MySQL\MySQL Server 5.7\bin> mysqld --install
2 Service successfully installed.

  此时若使用“net start mysql”成功启动msyql,则无须执行下面步骤

     2、初始化mysql数据库,输入“mysqld --initialize --user=root --console”。下面红色文字为初始化后的root 密码

复制代码
C:\Program Files\MySQL\MySQL Server 5.7\bin>mysqld --initialize --user=root --console
2016-10-29T01:35:44.309833Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see doc
umentation for more details).
2016-10-29T01:35:46.659968Z 0 [Warning] InnoDB: New log files created, LSN=45790

2016-10-29T01:35:47.154996Z 0 [Warning] InnoDB: Creating foreign key constraintsystem tables.
2016-10-29T01:35:47.362008Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating
a new UUID: 043563f4-9d78-11e6-a8c8-606dc79c383c.
2016-10-29T01:35:47.388009Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2016-10-29T01:35:47.401010Z 1 [Note] A temporary password is generated for root@localhost: u).ig.Gd.7hW
复制代码

      3、此时使用“net start mysql”成功启动msyql

    4、使用生成的密码登录mysql,通过“set password=password('123456')”修改密码。此处将root密码设置为123456

mysql> set password=password('123456');
Query OK, 0 rows affected, 1 warning (0.00 sec


2、mysql Access denied for user root@localhost


问题描述:
  
ERROR 1045 (28000): Access denied for user 
'root'@'localhost' (using password: YES)

 

问题原因:

设置密码为空时出现此问题


解决方法:

修改mysql的root密码

方法1: 用SET PASSWORD命令

?
1
2
MySQL -u root
  mysql> SET PASSWORD FOR 'root' @ 'localhost' = PASSWORD ( 'newpass' );

方法2:用mysqladmin

?
1
mysqladmin -u root password "newpass"

  如果root已经设置过密码,采用如下方法

?
1
mysqladmin -u root password oldpass "newpass"

方法3: 用UPDATE直接编辑user表

?
1
2
3
4
mysql -u root
 mysql> use mysql;
 mysql> UPDATE user SET Password = PASSWORD ( 'newpass' ) WHERE user = 'root' ;
 mysql> FLUSH PRIVILEGES ;

在丢失root密码的时候,可以这样

?
1
2
3
4
mysqld_safe --skip-grant-tables&
  mysql -u root mysql
  mysql> UPDATE user SET password = PASSWORD ( "new password" ) WHERE user = 'root' ;
  mysql> FLUSH PRIVILEGES ;


  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值