初始化MySQL用户(删除匿名用户)_Mysql

安装完MySQL后,系统默认会创建一个不需要密码的root用户,和一个无用户名无密码的匿名用户(Anonymous Account)。进行下面的初始化操作以合理授权,增强安全。

设置root密码先以root身份登入mysql -u root,设置root密码:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new_password');
创建新用户# 创建用户和设置密码
CREATE USER '新用户'@'localhost' IDENTIFIED BY '新密码';
# 对用户授权
GRANT ALL PRIVILEGES ON *.* TO '新用户'@‘localhost' WITH GRANT OPTION;
删除匿名用户DROP USER ''@'localhost';

如果提示报错,如:

复制代码 代码如下:

mysql< DROP USER ''@'localhost';
ERROR 1396 (HY000): Operation DROP USER failed for ''@'localhost'

则是因为*nix系统下,需要以'用户'@'hostname'的方式删除。方法如下:

复制代码 代码如下:

# 先查明确切的hostname
select user,host from mysql.user;
# 找出其中user为空的host名
# 删除此匿名用户
DROP USER ''@'上一步找到的hostname';

via:

设置密码:https://dev.mysql.com/doc/refman/5.1/en/assigning-passwords.html
创建用户:https://dev.mysql.com/doc/refman/5.1/en/adding-users.html

时间: 2024-09-25 07:40:20

初始化MySQL用户(删除匿名用户)_Mysql的相关文章

MYSQL删除匿名用户的方法(提高安全性)_Mysql

安装完MySQL以后会自动创建一个root用户和一个匿名用户,对于root大家都非常注意,而这个匿名用户很多人都会忽略,大概是因为匿名用户默认设定为只能在本地使用的缘故吧. 但如果MySQL要作为数据库提供给Web服务器使用的话,忽略这个匿名用户的代价可能相当惨重.因为在默认设置下,这个匿名用户在localhost上几乎拥有和root一样的权限.很可能因为访问者上传一个PHP文件,用这个PHP文件创建一个新用户,并给他一个较高的权限,然后用这个新用户连接到服务器的MySQL,对该服务器的MySQ

vsftpd虚拟用户与匿名用户配合使用

前几天写过一篇有关vsftpd虚拟用户的文章,今天再来介绍有关vsftpd虚拟用户与匿名用户配合使用的案例. 要求:在公司FTP服务器上,用户ilanni对/data目录下所有的目录都具有管理员权限,即删除.新建.重命名.上传等.而匿名用户可以浏览data目录下的所有目录,其中只对tmp目录具有管理员权限. 这样可以达到只有一个管理员账号,可以对/data目录进行操作,而公司的其他员工帐号都可以浏览/data目录,并且在/data/tmp目录下可以新建自己的目录,并上传文件等权限. 有关vsft

MySQL远程访问设置终极方法_Mysql

数据库对于服务端开发人员来说,几乎就是左膀右臂.几乎每一个服务端开发人员都要和数据库打交道.而MySQL又以其开源免费,小巧玲珑,简单易用,功能强大占据中国数据库使用份额的半壁江山.从去年接触到Vagrant以来,Vagrant以其方便易用深深吸引了D瓜哥.为了尽可能地和生产环境保持尽可能的一致性,减少不必要的问题的发生,Vagrant+Ubuntu+MySQL几乎是绝配. MySQL允许远程访问的设置 1.注释bind-address = 127.0.0.1. 复制代码 代码如下: >cd /

MySQL安全问题(匿名用户)的一点心得

mysql|安全|问题|心得 前两天在帮朋友整理他的主页空间时候,发现的一点关于MySQL可能大家都会忽略的问题:我们知道,在安装完MySQL后,它会自动创建一个root用户和一个匿名用户,其初始密码都是空,对于前者,很多参考资料上都会提醒大家要注意及时设定一个密码,而忽略了后者,大概是因为后者默认设定为只能在本机使用的缘故吧. 但如果你的MySQL是要提供给Web服务器作数据库服务的,忽略这个匿名用户的代价可能相当惨重,因为在默认设置下,这个匿名用户在localhost上几乎拥有和root一样

Ubuntu上安装MySQL+问题处理+安全优化_Mysql

0.说明 当然,MySQL的安装方法多种多样,在Ubuntu上,你可以采用apt-get的方式安装,这样的好处是:快速方便.基本上,它会帮你解决所有的函数库依赖问题,正常情况下,只要apt-get执行完成,那么MySQL也就可以使用了. 但我更倾向于使用源码的方式来安装MySQL,原因也很简单:除了有详细的官方文档外,你还可以非常清楚地知道你自己在做什么,这点在以后MySQL运行出现问题时将会有很大的帮助! 但即便是按照官方文档来安装,你也会遇到各种各样的问题,这里,我将呈现一个完整的过程给大家

在Linux系统安装MySql步骤截图详解_Mysql

如下是我工作中的记录,介绍的是linux系统下使用官方编译好的二进制文件进行安装MySql的安装过程和安装截屏,这种安装方式速度快,安装步骤简单! 需要的朋友可以按照如下步骤进行安装,可以快速安装MySql,希望可以帮助大家:)! 1.下载mysql的linux版本的二进制安装包: 地址:http://dev.mysql.com/downloads/mysql/ 这里我将安装包重命名为:tingyun-mysql-5.6.22.tar.gz 说明:根据自己需要可以不进行重命名操作 2.解压安装包

教你如何删除mysql匿名用户

安装完MySQL以后会自动创建一个root用户和一个匿名用户,对于root大家都非常注意,而这个匿名用户很多人都会忽略,大概是因为匿名用户默认设定为只能在本地使用的缘故吧. 但如果MySQL要作为数据库提供给Web服务器使用的话,忽略这个匿名用户的代价可能相当惨重.因为在默认设置下,这个匿名用户在localhost上几乎拥有和root一样的权限.很可能因为访问者上传一个PHP文件,用这个PHP文件创建一个新用户,并给他一个较高的权限,然后用这个新用户连接到服务器的MySQL,对该服务器的MySQ

MySQL验证用户权限的方法_Mysql

知识归纳 因为MySQL是使用User和Host两个字段来确定用户身份的,这样就带来一个问题,就是一个客户端到底属于哪个host.如果一个客户端同时匹配几个Host,对用户的确定将按照下面的优先级来排 基本观点越精确的匹配越优先 Host列上,越是确定的Host越优先,[localhost, 192.168.1.1, wiki.yfang.cn] 优先于[192.168.%, %.yfang.cn],优先于[192.%, %.cn],优先于[%] User列上,明确的username优先于空us

MySQL中基本的用户和权限管理方法小结_Mysql

MySQL 默认有个root用户,但是这个用户权限太大,一般只在管理数据库时候才用.如果在项目中要连接 MySQL 数据库,则建议新建一个权限较小的用户来连接. 在 MySQL 命令行模式下输入如下命令可以为 MySQL 创建一个新用户: CREATE USER username IDENTIFIED BY 'password'; 新用户创建完成,但是此刻如果以此用户登陆的话,会报错,因为我们还没有为这个用户分配相应权限,分配权限的命令如下: GRANT ALL PRIVILEGES ON *.