`

如何给MySql创建连接用户并授权

    博客分类:
  • sql
 
阅读更多

一般在为MySql创建用户时建议使用GRANT前台命令,最好不要直接去改数据库,以前一直都是习惯于直接去改数据库,现在慢慢学着把这个缺点改掉,开始使用命令授权创建,要不是最近把MySql升级了,还是跟以前一样直接用PHPMYADMIN增加用户出现ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value错误,根本也不会用GRANT命令,因为它太容易忘记,本文特别把命令精简一下供以后参考(MYSQL命令行下)。

1、首先登录MYSQL的COMMAND控制台

Mysql安装后都会带CMD命令行控制台,如下图,也可以直接使用CMD命令台,运行mysql安装目录bin下的mysql.exe,输入mysql -u root和密码即可登录到Mysql。mysql\bin目录下的可执行程序及功能一览如下表(参考官方MYSQL说明):

mysqld MySQL服务器
mysqld_safe、mysql.server和mysqld_multi 服务器启动脚本
mysql_install_db 初始化数据目录和初始数据库
mysql 一个命令行客户程序,用于交互式或以批处理模式执行SQL语句。
mysqladmin 用于管理功能的客户程序。
mysqlcheck 执行表维护操作。
mysqldump和mysqlhotcopy 负责数据库备份。
mysqlimport 导入数据文件。
mysqlshow 显示信息数据库和表的相关信息。
myisamchk 执行表维护操作。
myisampack 产生压缩、只读的表。
mysqlbinlog 是处理二进制日志文件的实用工具。
perror 显示错误代码的含义。

2、选择数据表

语句如下:use mysql;

a、在mysql的user表中增加连接用户帐号:

这里不要直接使用INSERT语句添加user记录,使用INSERT可能出现:

ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value错误。不过早期的MYSQL版本笔者倒没出现这个错误,因为天缘一直都是直接修改user表或直接使用INSERT语句完成,后来升级MYSQL到5.1的时候,发现可能会出现这个错误。

建议使用GRANT语句进行授权,语句如下:

GRANT USAGE ON *.* TO 'username'@localhost IDENTIFIED BY 'password' WITH GRANT OPTION;

上句:

“username”替换为将要授权的用户名,比如clientusr;

“password”替换为clientusr设置的密码;

b、可访问数据表授权

创建好帐户之后,就开始给上面的common user进行数据表授权,步骤3中增加的连接用户默认权限都是“N”的,必须在db表中为该帐户授权,允许其访问专用数据库,当然超级用户就不说了。

使用下面语句:

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON db.*  TO 'username'@localhost IDENTIFIED BY 'password';

本语句中的权限根据实际需要确定:

"db"替换为授权访问的数据库,所有则使用*.*

"username"是步骤3授权用户名

"password"是步骤3授权用户的设置密码

这样就为该用户授予了对某数据表的SELECT, INSERT, UPDATE, DELETE, CAREATE, DROP权限。

c、全部授权(常用)

GRANT ALL PRIVILEGES ON db.*  TO 'username'@localhost IDENTIFIED BY 'password';

3、生效授权,创建完毕

一句话即可:FLUSH PRIVILEGES;

4、删除授权

删除用户后,刷新授权.

分享到:
评论

相关推荐

    MySQL创建数据库与创建用户以及授权

    1、create schema [数据库名称] default character set utf8 collate utf8_general_ci;--创建数据库 ...MySQL创建数据库与创建用户以及授权相关SQL语句,摘自博客http://www.cnblogs.com/janken/p/5500320.html

    MySql用户创建、授权以及删除

    MySQL是世界上最流行的开源关系型数据库管理系统之一,其用户管理...总的来说,对MySQL用户进行创建、授权和删除操作是数据库管理的基础。理解并熟练掌握这些操作,可以帮助你更好地控制数据库访问权限,确保数据安全。

    mysql 的root 用户无法授权及解决navicat 远程授权提示1044问题

    #------------mysql root 用户无法赋权问题解决 -------- 1,登录 mysql -u root -p 2,use mysql; 选择mysql数据库 3,执行以下操作(查询用户的赋权权限,更改赋权权限 ,刷新生效) mysql> select user,host,...

    mysql .net 连接驱动

    例如,`MySqlConnection`类用于创建数据库连接,`MySqlCommand`类用于执行SQL命令,`MySqlDataReader`用于读取查询结果。开发人员可以直接引用此DLL来集成MySQL功能到他们的.NET项目中。 3. **MySql.Data.Entity....

    MYSQL无法远程连接

    - 登录MySQL并执行以下命令,以授予指定用户(例如`root`)从任意主机(`%`表示所有主机)连接的权限,并且可以使用指定密码(例如`123456`)进行认证。 ```sql GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' ...

    Mysql用户及授权

    MySQL允许管理员创建、管理用户,并根据需要授予不同的权限,确保数据的安全性和访问控制。以下是关于MySQL用户及授权的一些详细知识点: 1. **创建用户**: - `CREATE USER` 命令用于创建新的MySQL用户。例如: ...

    MySQL多表查询、事务和管理用户及授权

    本文将深入探讨MySQL中的多表查询、事务处理以及用户管理和权限授权。 **一、多表查询** 在数据库设计中,往往需要处理多个相关表的数据。MySQL提供了多种多表查询方法,包括: 1. **JOIN操作**:JOIN允许你将两...

    Linux开启mysql远程连接

    #### 四、步骤一:创建远程连接MySQL授权用户 首先需要登录到MySQL数据库,并创建一个允许远程连接的用户。这里我们创建一个名为`itlogger`的用户,其权限如下: ```sql mysql -u root -p mysql> GRANT ALL ...

    MySQL 添加用户、删除用户、授权、回收权限

    MySQL 用户管理与权限控制 ...通过本文,我们了解了 MySQL 中的用户管理和权限控制的基本概念和操作步骤,包括创建用户、授权、删除用户、修改密码、撤销权限等。正确地使用这些操作可以确保数据库的安全和稳定性。

    mysql8.0.28连接夹包

    连接池预先创建一定数量的数据库连接,并在需要时分配给应用程序,从而减少连接创建和销毁的开销。 总的来说,MySQL 8.0.28连接器Java包是Java开发者与MySQL数据库进行高效交互的重要工具,其新版本的发布意味着更...

    mysql设置指定ip远程访问连接实例

    在MySQL数据库管理中,远程访问连接允许用户从不同的计算机或网络位置访问数据库,这对于多用户协作、分布式系统或云服务的实现至关重要。本教程将详细解释如何设置MySQL以允许指定IP地址的远程访问连接。 首先,...

    mysql授权问题解决办法

    1. **编写初始化脚本**:在本地磁盘创建一个文本文件,例如命名为`mysql-init.txt`,并写入以下命令: ```sql SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword'); ``` 其中`MyNewPassword`应该...

    mysql远程访问授权

    ”这条SQL语句展示了如何授予一个名为“yourname”的用户所有权限,使其可以从任何主机(由'%'通配符表示)连接到MySQL服务器,并使用密码“yourpasswd”进行身份验证。这里的“all privileges”表示授予全部权限,...

    Mysql纯命令行添加用户

    如果希望用户能够授权给其他用户,需要在`GRANT`语句中加上`WITH GRANT OPTION`,如: ``` GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION; ``` 3. **设置和更改密码** ...

    MYSQL连接数据库实例

    总的来说,理解并掌握如何连接到MySQL数据库是任何开发人员的基本技能。通过实践,你可以更有效地与MySQL数据库交互,构建出高效且安全的数据驱动应用。提供的“mysql连接数据库的地址.doc”文档可能会进一步详细...

    C#连接MySQL需要的MySql.Data.dll,MySql.Web.dll

    它基于ASP.NET的Identity框架,使得在MySQL数据库中实现用户认证和授权变得简单。这个库包含了以下特性: 1. **成员资格提供程序**:实现了SqlMembershipProvider,处理用户的注册、登录、密码重置等功能。 2. **...

    mysql授权用户 开发用户帮助文档

    本文将重点介绍如何在MySQL中授权用户,并通过具体的示例来解释各个命令的作用。 #### 二、基本概念 1. **用户**: MySQL中的“用户”是指具有登录到MySQL服务器并执行SQL语句能力的身份。 2. **权限**: 指用户可以...

    VBS连接MYSQL教程.docx

    ### VBS连接MYSQL教程知识点详解 #### 一、概述 本文档主要介绍如何通过VBS(Visual Basic Script)实现与MySQL数据库的连接。这包括了MySQL驱动的安装、数据源的建立、连接字符串的生成以及连接过程中可能遇到问题...

    JIRA+MYSQL配置

    3. 创建数据库用户,并授权该用户访问数据库。在创建用户的同时,赋予该用户对所有数据库对象的所有权限,以确保JIRA可以对数据库进行所需的任何操作。授权时,包括远程访问权限('%'代表任何主机)和本地访问权限...

    jSP课件(与MYSQL连接)

    3. 建立连接:通过`Connection`接口创建连接,如`sCon = "jdbc:mysql://localhost:3306/school"`,然后调用`DriverManager.getConnection(sCon, username, password)`。 4. 执行SQL:创建`Statement`或`...

Global site tag (gtag.js) - Google Analytics