您的位置:首页 > 运维架构 > Linux

关于linux安装mysql没有初始化密码、忘记密码、无法远程连接的解决方法

2013-11-13 22:14 1371 查看
mysql默认root用户没有密码,输入mysql –u root 进入mysql
1、初始化root密码
进入mysql数据库
?
1
mysql>
update
user
set
password
=
PASSWORD
(‘123456’)
where
User
=
'root'
;
2、允许mysql远程访问,可以使用以下三种方式:
a、改表。
?
1234
mysql -u root –p
mysql>use mysql;
mysql>
update
user
set
host =
'%'
where
user
=
'root'
;
mysql>
select
host,
user
from
user
;
b、授权。
例如,你想root使用123456从任何主机连接到mysql服务器。
?
1
mysql>
GRANT
ALL
PRIVILEGES
ON
*.*
TO
'root'
@
'%'
IDENTIFIED
BY
'123456'
WITH
GRANT
OPTION
;
如果你想允许用户jack从ip为10.10.50.127的主机连接到mysql服务器,并使用654321作为密码
?
12
mysql>
GRANT
ALL
PRIVILEGES
ON
*.*
TO
'jack'
@’10.10.50.127’ IDENTIFIED
BY
'654321'
WITH
GRANT
OPTION
;
mysql>FLUSHRIVILEGES
c:在安装mysql的机器上运行:
?
12345678
//进入MySQL服务器
d:\mysql\bin\>mysql -h localhost -u root
//赋予任何主机访问数据的权限
mysql>
GRANT
ALL
PRIVILEGES
ON
*.*
TO
'root'
@
'%'
WITH
GRANT
OPTION
//使修改生效
mysql>FLUSH
PRIVILEGES
//退出MySQL服务器
mysql>EXIT
-------------------------------------------------------------------------------------
用的linux系统,想做点儿和web相关的应用测试,需要用到mysql,发现安装时没有设置密码,这样不安全阿?
初始话root密码?
安装好mysql后,初始root密码执行
mysqladmin -u root -p '你的密码'
也可以使用mysqladmin修改root密码
mysqladmin -u root -p '旧密码' '新密码'

忘记密码咋办呢?
使用mysql的安全模式启动且启动过程中跳过权限表,不加载它,这样进入mysql的是就不需要密码了
mysqld_safe --skip-grant-tables &
进入mysql:
mysql -u root
修改密码:
update mysql.user set password=password('you password') where user='root';
flush privileges;//刷新权限

没办法远程连接咋办捏?
同样使用:
mysqld_safe --skip-grant-tables &
进入mysql输入:
set global read_only=0;//关闭数据库只读模式
flush privileges;
set golbal read_only=1;//将数据库设置为读写模式
flush privileges;
grant all privileges on *.*to root@'%' identified by root;//给root授权,root可以从那里登录可以操作那些数据库和表,这里的方法仅适用于个人测试环境,切勿使用到生产环境(方法有危险,使用需谨慎!)
flush privileges;
退出mysql
重启mysql服务,远程登录试试
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐