MySQL基本命令及注意事项

 

 

MySQL常用命令:

 

  1.  连接MYSQL:
    格式: mysql -h主机地址 -u用户名 -p用户密码
    1. 例1:连接到本机上的MYSQL
      首先在打开DOS窗口,然后进入mysql安装目录下的bin目录下,例如: D:/mysql/bin,再键入命令mysql -u root -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql>
    2. 例2:连接到远程主机上的MYSQL
      假设远程主机的IP为:10.0.0.1,用户名为root,密码为123。则键入以下命令:
      mysql -h10.0.0.1 -uroot -p123 (注:u与root可以不用加空格,其它也一样)
      如果你使用-p或--password选项但没有指定密码值,客户端程序提示你输入密码。当你输入密码时并不显示密码。这比在在命令行输入密码要安全得多。因为命令行输入密码,别人就有可能通过查看命令行历史来得到密码。因此应当尽量避免在-p后面直接跟密码。
    3. 退出MYSQL命令
      quit 或者 exit

  2. 修改密码:
    格式:mysqladmin -u用户名 -p旧密码 password 新密码
    1. 例1:给root加个密码123。首先在DOS下进入目录C:/mysql/bin,然后键入以下命令:
      mysqladmin -uroot -password 123
      注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
    2. 例2:再将root的密码改为456
      mysqladmin -uroot -p123 password 456
  3. 增加新用户:(注意:和上面不同,下面的因为是MYSQL环境中的命令,所以后面都带一个分号作为命令结束符)
    格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码"
    1. 例1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MYSQL,然后键入以下命令:
         grant select,insert,update,delete on *.* to test1@"%" Identified by "abc";

      但例1增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见例2。
    2. 例2、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。
         grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc";
      如果你不想test2有密码,可以再打一个命令将密码消掉。
         grant select,insert,update,delete on mydb.* to test2@localhost identified by "";
    3. 末尾可增加WITH with_option部分,例如:
        grant all privileges on *.* to dbuser@localhost identified by 'dbuser' with grant option;
      with后面可以跟
        GRANT OPTION
        | MAX_QUERIES_PER_HOUR count
        | MAX_UPDATES_PER_HOUR count
        | MAX_CONNECTIONS_PER_HOUR count
        | MAX_USER_CONNECTIONS count
      GRANT OPTION指定此使用者具有可以授权给其他使用者的权限,通常这个权限只有最高管理者才会拥有。MAX_QUERIES_PER_HOUR count 及后面四项分别限制使用者的每小时查询次数、更新次数、连线次数及最大同事在线数量。
  4. 显示命令
    1. 显示数据库列表:
      show databases; 
      刚开始时才两个数据库:mysql和test。mysql库很重要它里面有MYSQL的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。
    2. 显示库中的数据表:
        use mysql; //打开库
        show tables;
    3. 显示数据表的结构:
        describe 表名;
    4. 建库:
        create database 库名;
    5. 建表:
        use 库名; 
        create table 表名 (字段设定列表);

    在windows中MySql以服务形式存在,在使用前应确保此服务已经启动,未启动可用net start mysql命令启动。实际使用中,为了防止MySQL停止服务,可以找到 mysql服务 双击 新窗口中 -> 恢复 -> 第一次失败 设置为 重新启动服务。这样当服务因为某些原因停止时,就会自动重启服务。而Linux中启动时可用“/etc/rc.d/init.d/mysqld start"命令,注意启动者应具有管理员权限。
刚安装好的MySql包含一个含空密码的root帐户和一个匿名帐户,这是很大的安全隐患,对于一些重要的应用我们应将安全性尽可能提高,在这里应把匿名帐户删除、 root帐户设置密码,可用如下命令进行:
    use mysql;
    delete from User where User="";
    update User set Password=PASSWORD('newpassword') where User='root';

    在进行开发和实际应用中,用户不应该只用root用户进行连接数据库,虽然使用root用户进行测试时很方便,但会给系统带来重大安全隐患,也不利于管理技术的提高。我们给一个应用中使用的用户赋予最恰当的数据库权限。如一个只进行数据插入的用户不应赋予其删除数据的权限。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值