Linux 创建mysql用户,并为该用户授权

本文详细介绍了如何使用MySQL命令行创建新用户、创建数据库、授权用户对数据库的操作权限,并通过实例演示了操作步骤及注意事项。重点突出了MySQL用户管理与数据库创建的基本流程。

进入mysql命令行

mysql -uroot -p

输入密码,回车,进入mysql命令行

创建新用户

insert into mysql.user(Host,User,Password) values("localhost","用户名",PASSWORD("密码"));

Host 本地访问即localhost,远程访问用%,如:insert into mysql.user(Host,User,Password) values("%","用户名",PASSWORD("密码"));

User 用户名

Password 密码

然后清除缓存

flush privileges;

创建数据库

这个比较简单,create database 库名; 别忘了加分号啊。

为该用户授权

grant all privileges on 库名.* to 用户名@% identified by '密码';

这里的%号代表允许远程登录

如果只是本地登录的换改为localhost就好

如:

grant all privileges on 库名.* to 用户名@localhost identified by '密码';

然后清除缓存

flush privileges;

Linux系统中,为MySQL数据库创建一个虚拟用户通常涉及到两个步骤:一是创建用户的主目录和组,二是编辑MySQL的配置文件添加用户。以下是详细的指南: 1. **创建用户主目录和组**: - 打开终端,首先创建一个用户组,例如: ``` sudo groupadd mysql_user_group ``` - 然后创建对应的用户指定所属组: ``` sudo useradd -m -g mysql_user_group mysql_virtual_user ``` - `-m` 参数表示为该用户创建一个家目录,`-g` 指定用户属于的组。 2. **设置密码**: ``` sudo passwd mysql_virtual_user ``` 输入两次密码给这个用户。 3. **编辑MySQL配置**: - 首先备份原有的MySQL配置文件(my.cnf或my.ini),如果有的话: ``` sudo cp /etc/mysql/my.cnf{,.bak} ``` - 使用文本编辑器打开配置文件(如nano或vim),找到 `[mysqld]` 或 `[client]` 部分,然后增加的访问控制机制,比如 `skip-grant-tables`(仅用于临时测试,生产环境不建议): ```ini [client] # 添加下面这行 secure-file-priv = /var/www/html/mysql.sock:%u [mysqld] # 添加以下行(这里假设你的虚拟用户目录位于/var/www/html) allow-root-access=off root-authentication-method=mysql_native_password user-files-dir=/var/www/html/mysql_user_dir ``` 4. **重启MySQL服务授权**: - 重启MySQL服务: ``` sudo service mysql restart ``` - 登录MySQL作为root用户,然后为用户创建权限: ``` mysql -u root -p GRANT ALL PRIVILEGES ON * . * TO 'mysql_virtual_user'@'localhost' IDENTIFIED BY 'your_password'; FLUSH PRIVILEGES; ``` - 之后记得退出MySQL客户端。 5. **限制文件权限**: - 将用户的数据目录chmod为只读: ``` sudo chown mysql_user_group:mysql_virtual_user /var/www/html/mysql_user_dir sudo chmod 700 /var/www/html/mysql_user_dir sudo chmod 640 /var/www/html/mysql_user_dir/* ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值