MySQL的安全设置,包括设置root密码,删除空用户,开放root帐号远程访问权限。
C:\> E:\mysql\bin\mysql -u root
mysql> use mysql
mysql> select user,host,password from user;
可看到如下查讯结果:
user     host    password
root  localhost 
root  127.0.0.1
      localhost
删除空的帐号mysql> delete from user where user='';
将host=127.0.0.1改为%或本机IP,以便远程访问数据库
mysql> update user set host = '%'
       -> where host='127.0.0.1';
设置root@localhsot,root@%密码:
mysql> update user set password = password('newpwd')
       -> where host = '%';
mysql> update user set password = password('newpwd')
       -> where host = 'localhost';
或者只用如下一行命令,同时对两个root命名
mysql> update user set password = password('newpwd');(不推荐使用)
更新密码后,必须用FLUSH PRIVILEGES让服务器重新读授权表。否则,重新启动服务器前,不会使用更改。
=========================
1,我怎么设置“root密码为空”不成功呢?设置为空有什么用呢?2,安装完了mysql还需要配置什么东东不?3,怎么用mysql建表,并将数据库导入eclipse呢?我在弄一个学籍管理系统,数据库连接总有错误。

解决方案 »

  1.   

    1,没有安全性2,可以默认,也可以在my.ini中配置启动参数3,create table tt(id int)
    只能导入数据,其它如主键、外键、约束、SP、UDF、TRIGGER等等要重新编制 下载jdbc驱动 连接mysql 
      

  2.   

    mysql 数据库常用操作
    1、启动mysql数据库
    还在上面的命令窗口里面,输入命令:net start mysql5
    这样就启动了mysql服务。2、(本地)登录mysql数据库
    还在上面的命令窗口里面,输入命令:mysql -u root -p
    回车后提示输入密码。
    mysql解压缩版初次安装管理员root的密码为空,因此直接再回车一次就登入mysql数据库了。如果你不是初次登录mysql,你还拥有网络地址的用户,那么你可以用如下命令登录到mysql服务器,这个mysql服务器也许在远方,也许在本地。这种登录方式叫“远程登录”,命令如下:
    mysql -h 192.168.3.143 -u root -p
    mysql -h 192.168.3.143 -u root -pleizhimin-h是指定登录ip,-u指定用户,-p指定密码,-p后如果什么都不写,那么接下来会提示输入密码,-p后也可以直接写上密码,这样就不再需要输入密码了。3、操作数据库和表
    登录mysql数据库后,就可以执行指定操作数据库,用命令:use 数据库名
    指定了操作的数据库对象后,就可以操作数据库中的表了,操作方法当然是SQL命令了,呵呵。4、更改mysql数据库管理员root的密码
    mysql数据库中默认有个mysql数据库,这个是mysql系统的数据库,用来保存数据库用户、权限等等很多信息。要更改密码,就要操作mysql数据库的user表。现在mysql的root用户密码还为空,很不安全的,假设要更改密码为“leizhimin”。还在上面的命令窗口里面,执行如下命令:
    use mysql;
    grant all on *.* to root@'%' identified by 'leizhimin' with grant option;
    commit;这段命令的含义是,添加一个root用户,拥有所有的权限,密码为“leizhimin”,并且这个用户不但可以本地访问,也可以通过网络访问。强调这个原因是mysql系统自带的的那个root用户只能从本地访问,它@字符后面的标识是localhost。具体可以查看mysql数据的uer表看看,这样以来,就有两个root用户了,一个是系统原来的,一个新建的,为了管理的方便,就将mysql自带root删除,保留刚创建的这个root用户,原因是这个用户可以通过网络访问mysql。然后,删除用户的命令:
    user mysql;
    delete from user where user='root' and host='localhost';
    commit;其实上面的方法是授权命令,在授权的同时创建了数据库用户。mysql也有单独的修改用户密码的方法,下面看看如何操作。
    首先,先建立一个用户lavasoft,密码为:123456
    grant all on *.* to lavasoft@'localhost' identified by '123456' with grant  option;接下来就修改这个用户的密码为:leizhimin
    update user set password = password('leizhimin') where user = 'lavasoft' and host='localhost';
    flush privileges;说明一点,最好用grant的方式创建mysql用户,尤其对mysql DBA来说,创建用户的同时要指定用户权限,养成好习惯很重要的。这个修改方法实际上用的是mysql函数来进行的,还有更多的方法,我就不一一介绍了。
    还要注意一点就是在修改密码等操作的时候,mysql不允许为表指定别名,但是初次在外却没有这个限制。5、创建数据库
    实际上mysql数据库中除了mysql数据库外,还有一个空的数据库test,供用户测试使用。
    现在继续创建一个数据库testdb,并执行一系列sql语句看看mysql数据库的基本操作。创建数据库testdb:
    create database testdb;预防性创建数据库:
    create database if not testdb创建表:
    use testdb;
    create table table1(
    username varchar(12),
    password varchar(20));预防性创建表aaa:
    create table if not exists aaa(ss varchar(20));查看表结构:
    describe table1;插入数据到表table1:
    insert into table1(username,password) values
    ('leizhimin','lavasoft'),
    ('hellokitty','hahhahah');
    commit;查询表table1:
    select * from table1;更改数据:update table1 set password='hehe' where username='hellokitty';
    commit;删除数据:
    delete from  table1 where username='hellokitty';
    commit;给表添加一列:
    alter table table1 add column(
      sex varchar(2) comment '性别',
      age date not null comment '年龄'
    );
    commit;从查询创建一个表table1:
    create table tmp as
    select * from table1;删除表table1:
    drop table if exists table1;
    drop table if exists tmp;6、备份数据库testdb
    mysqldump -h 192.168.3.143 -u root -pleizhimin -x --default-character-set=gbk >C:\testdb.sql7、删除数据库testdb
    drop database testdb;8、恢复testdb数据库
    首先先建立testdb数据库,然后用下面命令进行本地恢复:
    mysql -u root -pleizhimin testdb <C:\testdb.sql9、删除mysql服务
    假如你厌倦mysql了,你需要卸载,那么你只需要这么做停止mysql服务
    net stop mysql5删除mysql服务
    sc delete mysql5本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/xys_777/archive/2010/07/15/5736883.aspx