mysql中skip-networking怎么关闭?不小心打开后,本地连接不了

mysql中skip-networking怎么关闭?不小心打开后,本地连接不了,第1张

1、干掉正在运行的数据库:

方法1)/etc/init.d/mysqld stop

(方法2)rcmysqld stop

(方法3)service mysqld stop

(方法4)kill -TERM mysqld

2、启动mysql服务器(--skip-grant-tables忽略用户表)

mysqld_safe --user=mysql --skip-grant-tables --skip-networking &

3、重新使用root用户登录数据库

mysql -u root mysql

4、重新设置root密码

mysql>UPDATE user SET Password=PASSWORD('newpassword') where USER='root'

5、刷新权限

mysql>FLUSH PRIVILEGES

6、退出mysql

mysql>quit

7、重启mysql

(1)/etc/init.d/mysqld restart

(2)service mysqld restart

8、使用root用户重新登录mysql

(方法1)mysql -uroot -p

(方法2)service mysqld start

说到--skip-add-locks

首先要知道--add-locks,这是导出时的默认值,意思是导出某张表时,会在该表上加个锁,导出完成后执行unlock,如果导出过程中表数据有变动(增删改),对应的sql就会被挂起,直到unlock之后才能继续执行,这样执行导出会更高效!

但是,如果导出的表,数据量比较大,会导致导出表的时间比较长,而如果业务 *** 作表又比较频繁的话,默认加锁的 *** 作就造成大量业务sql堵塞,影响实际业务运行,不能因为要高效而抛弃了实际业务,这个时候就要用--skip-add-locks跳过加锁模块

方法1: 用SET PASSWORD命令

首先登录MySQL。

格式:mysql>set password for 用户名@localhost = password('新密码')

例子:mysql>set password for root@localhost = password('123')

方法2:用mysqladmin

格式:mysqladmin -u用户名 -p旧密码 password 新密码

例子:mysqladmin -uroot -p123456 password 123

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

首先登录MySQL。

mysql>use mysql

mysql>update user set password=password('123') where user='root' and host='localhost'

mysql>flush privileges

方法4:在忘记root密码的时候,可以这样

以windows为例:

1. 关闭正在运行的MySQL服务。

2. 打开DOS窗口,转到mysql\bin目录。

3. 输入mysqld --skip-grant-tables 回车。--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。

4. 再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录。

5. 输入mysql回车,如果成功,将出现MySQL提示符 >。

6. 连接权限数据库: use mysql。

6. 改密码:update user set password=password("123") where user="root"(别忘了最后加分号) 。

7. 刷新权限(必须步骤):flush privileges 。

8. 退出 quit。

9. 注销系统,再进入,使用用户名root和刚才设置的新密码123登录。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7345896.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存