zoukankan      html  css  js  c++  java
  • MySQL数据库管理

    MySQL权限管理

    • 权限管理信息被存储在user,db,host,table_priv,column_priv,procs_priv的表中
    • 通过CREATE,DROP权限可以新建数据库/表,删除数据库/表
    • SELECT,INSERT,UPDATE,DELETE对现存的表进行增删改查
    • INDEX允许对现存的表进行建立和删除索引

    MySQL账户管理

    • 使用GRANT语句
      e.g.:GRANT ALL PRIVILEGES ON *.* TO 'monkey'@'localhost' IDENTIFIED BY 'some_password' WITH GRANT OPTION;
      GRANT RELOAD,PROCESS ON *.* TO 'admin'@'localhost';
      GRANT命令解释: PRIVILEGES表示任何权限,后面也可以是SELECT/UPDATE;ON表示影响哪些表,前面的表示数据库,后面的表示表;TO表示授权给何用户,前面的为用户名,后面的可以填IP,IP段,主机名或者%(表示任意);之后是可选的指定用户的密码
    • 直接操作MySQL的授权表(user) 注意,插入之前可以查看表结构然后一次插入(DESCRIBE);插入时在密码字段要记得用PASSWORD(<密码>)进行加密,否则插入失败;插入完成之后使用FLUSH PRIVILEGES刷新,否则授权表的改动只有重启服务器才会被发现

    移除用户

    • DROP USER

    限制用户账户资源

    • 可以限制用户以下资源:1.每小时发出的查询数;2.每小时发出的更新数;3.每小时可以连接的服务器次数
    • 使用GRANT语句实现资源限制:实际上就是在上述的账户管理中的GRANT语句后面加上WITH子句即可,e.g.:GRANT ALL ON customer TO 'admin'@'localhost' IDENTIFIED BY 'some_password' WITH MAX_QUERIES_PER_HOUR 20 MAX_UPDATE_PER_HOUR 15 MAX_CONNECTIONS_PER_HOUR 20 MAX_USER_CONNECTION 10;

    修改用户密码

    • 为现有用户添加密码:mysqladmin -u root -h hostname password 'new password';
    • 修改密码:SET PASSWORD FOR 'user'@'localhost' = PASSWORD('new password');

    数据库备份和恢复

      • mysqldump/source
  • 相关阅读:
    Struts2中Action取得表单数据的几种方法
    一次性插入多条记录快的不只一点点
    PHP规范PSR0和PSR4的理解
    mysql出现Too many connections的解决...
    浅谈Mysql 表设计规范(转)
    写单元测试的好处(转)
    TDD 与 BDD 仅仅是语言描述上的区别么?
    较好的方法命名规则(转)
    spring中InitializingBean接口使用理解(转)
    Maven:浅析依赖(dependency)关系中 scope 的含义(转)
  • 原文地址:https://www.cnblogs.com/mengnan/p/6790437.html
Copyright © 2011-2022 走看看