jdbc驱动(为了让sql developer连接mysql)
为了从oracle sql developer远程以root连接mysql
1
2
3
mysql>GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY '123456' WITH GRANT OPTION
Query OK, 0 rows affected (0.00 sec)
mysql>
在设置root账户密码时,可以选择是否允许其从远程访问。默认情况下是不允许的。
在命令行下,可以有两种大同小异的方法来作此设置:
(1)
1
2
3
mysql>GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY 'something' WITH GRANT OPTION
mysql>GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY 'something' WITH GRANT OPTION
第一句增加了一个root用户授权通过本地机(localhost)访问,密码逗something地。
第二句则是使用通配符,授与root用户从任何其它主机发起的访问。
(2)亦可直接使用update语句修改user表:使用root用户或其他用户登录mysql,转到mysql数据库
1
2
3
4
5
update user set host='localhost' where user='root'
flush privileges//只允许root在本机登录
update user set host='%' where user='root'
flush privileges//允许root远程访问
注意,以上一定要加flush语句。
另外,如果要建新用户,则用grant语句比较方便,记住语句grant总是创建新用户。
例如我目前的库:
mysql>select host,user from user
+-----------+--------+
| host | user |
+-----------+--------+
| % | mytest |
| % | root |
| localhost | mytest |
| localhost | root |
+-----------+--------+
4 rows in set (0.00 sec)
root和mytest都既能本地连,也能远程连
方法一使用phpmyadmin,这是最简单的了,修改mysql库的user表,
不过别忘了使用PASSWORD函数。
方法二
使用mysqladmin,这是前面声明的一个特例。
mysqladmin -u root -p password mypasswd
输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。
把命令里的root改为你的用户名,你就可以改你自己的密码了。
当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin,
那么这种方法就是无效的。
而且mysqladmin无法把密码清空。
下面的方法都在mysql提示符下使用,且必须有mysql的root权限:
方法三
mysql>INSERT INTO mysql.user (Host,User,Password)
VALUES(%,jeffrey,PASSWORD(iscuit))
mysql>FLUSH PRIVILEGES
确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。
在《mysql中文参考手册》里有这个例子,所以我也就写出来了。
注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。
方法四
和方法三一样,只是使用了REPLACE语句
mysql>REPLACE INTO mysql.user (Host,User,Password)
VALUES(%,jeffrey,PASSWORD(iscuit))
mysql>FLUSH PRIVILEGES
方法五
使用SET PASSWORD语句,
mysql>SET PASSWORD FOR jeffrey@"%" = PASSWORD(iscuit)
你也必须使用PASSWORD()函数,
但是不需要使用FLUSH PRIVILEGES。
方法六
使用GRANT ... IDENTIFIED BY语句
mysql>GRANT USAGE ON *.* TO jeffrey@"%" IDENTIFIED BY iscuit
这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES。
注意: PASSWORD() [不是]以在Unix口令加密的同样方法施行口令加密。
1.以系统管理员登陆;2.停止MySQL服务;
3.进入CMD,进入MySQL的安装目录,假设是D:/MySQL/MySQL
Server
5.0/;
4.跳过权限检查启动MySQL,
D:/MySQL/MySQL
Server
5.0/bin/mysqld-nt
–skip-grant-tables
5.重新打开一个CMD,进入D:/MySQL/MySQL
Server
5.0/bin/,
重设root密码
D:/MySQL/MySQL
Server
5.0/bin/mysqladmin
-uroot
flush-privileges
password
“newpassword”
D:/MySQL/MySQL
Server
5.0/bin/mysqladmin
-u
root
-p
shutdown
将newpassword替换为你的新密码,第二个命令会让你重复输入一次新
密码。
6.
在cmd里net
start
mysql
Unix&Linux:
1.用root或者运行mysqld的用户登录系统;
2.利用kill命令结束掉mysqld的进程;
3.使用–skip-grant-tables参数启动MySQL
Server
#mysqld_safe
–skip-grant-tables
&
4.然后用空密码方式使用root用户登录
MySQL;mysql
-u
root
5.为root@localhost设置新密码
mysql>
update
mysql.user
set
password=PASSWORD('新密码')
where
User='root'mysql>
flush
privileges;mysql>
quit
6.
重新启动MySQL
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)