Mysql初始化root密码和允许远程访问


mysql默认root用户没有密码,输入mysql –u root 进入mysql


1、初始化root密码

进入mysql数据库
mysql>use mysql;
mysql>update user set password=PASSWORD('123456') where user='root' and host = 'localhost';

2、允许mysql远程访问,可以使用以下三种方式:

a、改表。
    
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服务器。   

GRANT ALL PRIVILEGES ON databasename.*  TO 'username'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
如果你想允许用户jack从ip为10.10.50.127的主机连接到mysql服务器,并使用654321作为密码
    
mysql>GRANT ALL PRIVILEGES ON *.* TO 'jack'@’10.10.50.127’ IDENTIFIED BY '654321' WITH GRANT OPTION;
mysql>FLUSH PRIVILEGES;

c:在安装mysql的机器上运行:
    
//进入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


-------------------------------------------------------------------------------------

可参照下面方式添加新用户:

(1)/登录MYSQL
@>mysql -u root -p
@>密码
//创建用户
mysql> insert into mysql.user(Host,User,Password) values("localhost","phplamp",password("1234"));
//刷新系统权限表
mysql>flush privileges;
这样就创建了一个名为:phplamp  密码为:1234  的用户。

http://www.cnblogs.com/analyzer/articles/1045072.html


(2)现在有张表为student,我想将这个表里面的数据复制到一个为dust的新表中去,虽然可以用以下语句进行复制,总觉得不爽,希望各位帮助下我,谢谢。
answer 01:
create table user2 select * from user;//用于复制前未创建新表dust的情况下
answer 02:
insert into userselect * from user2;//已经创建了新表dust的情况下



你可能感兴趣的:(Mysql初始化root密码和允许远程访问)