Mysql创建、删除用户、查询所有用户等教程,提升您的MYSQL安全度!
建议您不要使用mysql的root账号来为您的web页面连接数据库,这可能会导致用户通过网页获取到您的数据库账号密码,存在严重的安全隐患。
建议新建一账号,权限设置基本够用,然后使用那新建的账号来连接您的数据库。
1、连接mysql
mysql -uroot -p密码
(-p后面无需空格,从-p开始即为密码开始) 如果您的MySql在远程服务器上,需要加上 -hIP地址,如
mysql -uroot -p123456 -h111.111.111.111
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
3、创建新用户(针对某个数据库的用户)
格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"
如,增加一个用户user1密码为password1,让其可以在本机上登录, 并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入mysql,然后键入以下命令:
grant select,insert,update,delete on *.* to user1@localhost Identified by "password1";
注意:此处的"localhost",是指该用户只能在本地登录,不能在另外一台机器上远程登录。如果想远程登录的话,将"localhost"改为"%",表示在任何一台电脑上都可以登录。也可以指定某台机器可以远程登录。
如果你不想user1有密码,可以再打一个命令将密码去掉。
grant select,insert,update,delete on mydb.* to user1@localhost identified by "";
如果说用户原来存在,您只需
grant select,insert,update,delete on mydb.* to user1@localhost
权限列表
grant 权限1,权限2,...权限n on 数据库名称.表名称 to 用户名@用户地址 identified by '连接口令';
权限1,权限2,...权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。
当权限1,权限2,...权限n被all privileges或者all代替,表示赋予用户全部权限。
当数据库名称.表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表d权限。
mysql>grant all privileges on testDB.* to test@localhost identified by '1234'; mysql>flush privileges;//刷新系统权限表
格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码";
4、删除用户
@>mysql -u root -p
@>密码
mysql>Delete FROM user Where User='test' and Host='localhost';
mysql>flush privileges;
mysql>drop database testDB; //删除用户的数据库
删除账户及权限:>drop user 用户名@'%';
>drop user 用户名@ localhost;
5、修改指定用户密码
@>mysql -u root -p
@>密码
mysql>update mysql.user set password=password('新密码') where User="test" and Host="localhost";
mysql>flush privileges;
如删除sa这个用户,我前面设置host为localhost:
drop user sa@localhost;
最新文章
- 多项目并行开发如何做到快速切换——sublime Text3
- wxPython入门练习代码 三
- JSP读取My SQL数据乱码问题的解决
- vi/vim学习
- Java 8新特性——default方法(defender方法)介绍
- PowerDesigner使用详解
- Unity3D 制作右上角小地图
- MySQL Cluster-备份恢复初步测试
- 【充电器】小米手机2S电池座充——小米手机官网
- 解决backgroud:transparent在低版本浏览器中的bug
- HTTP 错误 403.14 - Forbidden的解决办法
- AlloyTouch之select选择插件
- 使用gitbook 发布一个教程文档网站
- eclipse中创建完整的maven项目
- Day17 Django的基础使用和结构
- 自然语言处理之LCS最长公共子子序列
- day16 Python 内置函数 大体演示想看就看,会用就行
- [转]redis主从配置及主从切换
- Python核心编程 | 装饰器
- JSP九大内置对象辨析
热门文章
- git实现github仓库和本地仓库同步
- 【BZOJ 2194】2194: 快速傅立叶之二(FFT)
- android studio 目录 文件 解读
- SQL Server附加数据库提示“版本为661,无法打开,支持655版本……”
- hihocoder #1076 与链 dp
- 【BFS】【map】hdu5925 Coconuts
- spark1.0.0 mllib机器学习库使用初探
- python开发_python代码风格(coding style)
- sql 锁类型与锁机制 转
- 关于warning: Clock skew detected. Your build may be incomplete. 的解决方法