如何在win系统下给mysql分配权限

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在win系统下给mysql分配权限相关的知识,希望对你有一定的参考价值。

参考技术A 创建用户
创建一个名为mysqlusr的用户,设置一个随机密码,密码的长度最好
不要少于20位。
2.设置用户的身份
将mysqlusr用户加入Guests组,并去掉其它任何的组。
3.设置磁盘权限
假设MySQL安装在如下目录中
D:hostingsystemmysql
假设MySQL的数据库存放在如下目录中
D:hostingMySQLDB
假设MySQL的服务运行者修改为mysqlusr
目录权限设置如下
D:hostingsystemmysql
mysqlusr
读取和运行
列出文件夹目录
读取
D:hostingsystemmysqltmpdir
mysqlusr
修改
读取和运行
列出文件夹目录
读取
写入
D:hostingMySQLDB
mysqlusr
修改
读取和运行
列出文件夹目录
读取
写入
4.修改MySQL的相应配置
修改MySQL目录下的my.ini
在其中增加一行,内容如下
tmpdir=D:/hosting/system/MySQL/tmpdir

在Linux下给mysql创建用户并分配权限等问题


在linux系统中安装mysql的步骤


工具:

      mysql-5.6.17-linux-glibc2.5-i686.tar.gz

      mysql-5.6.17-linux-glibc2.5-x86_64.tar.gz

      linux系统64位 

方法/步骤

     1、到mysql官网下载mysql编译好的二进制安装包.

     2、解压安装包:

     3、进入安装包所在目录,执行命令:tar -zxvf  mysql-5.6.17-linux-glibc2.5-i686.tar.gz

     4、复制解压后的mysql目录到系统的本地软件目录:

         执行命令:cp mysql-5.6.17-linux-glibc2.5-i686 /usr/local/mysql -r

   注意:目录结尾不要加/

    5、添加系统mysql组和mysql用户:

         执行命令:groupadd mysql和useradd -r -g mysql mysql

    6、安装数据库:

    7、进入安装mysql软件目录:执行命令 cd /usr/local/mysql

    8、修改当前目录拥有者为mysql用户:执行命令 chown -R mysql:mysql ./

    9、安装数据库:执行命令 ./scripts/mysql_install_db --user=mysql

    10、修改当前目录拥有者为root用户:执行命令 chown -R root:root ./

    11、修改当前data目录拥有者为mysql用户:执行命令 chown -R mysql:mysql data

 到此数据库安装完毕

   1、启动mysql服务和添加开机启动mysql服务:

      添加开机启动:执行命令cp support-files/mysql.server /etc/init.d/mysql,把启动脚本放到开机   初始化目录

   2、启动mysql服务:执行命令service mysql start

     执行命令:ps -ef|grep mysql 看到mysql服务说明启动成功

   3、修改mysql的root用户密码,root初始密码为空的:

      执行命令:./bin/mysqladmin -u root password ‘密码‘

   4、把mysql客户端放到默认路径:

ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql

注意:建议使用软链过去,不要直接包文件复制,便于系统安装多个版本的mysql


在Linux下给mysql创建用户并分配权限

1.新建用户

  //登录MYSQL

  @>mysql -u root -p

  @>密码

  //创建用户

  mysql> insert into mysql.user(Host,User,Password) values(‘localhost’,‘Tome’,password(‘Tome’));

  //刷新系统权限表

  mysql>flush privileges;

  这样就创建了一个名为:Tome  密码为:Tome  的用户。

  //退出后登录一下

  mysql>exit;

  @>mysql -u Tome -p

  @>输入密码

  mysql>登录成功


2.为用户授权

  //登录MYSQL(有ROOT权限)。我里我以ROOT身份登录。

  @>mysql -u root -p

  @>密码

  //首先为用户创建一个数据库(TomeDB)

  mysql>create database TomeDB;

  //授权jeecn用户拥有Tome数据库的所有权限

  @>grant all privileges on TomeDB.* to [email protected] identified by ‘Tome’;

  //刷新系统权限表

  mysql>flush privileges;

  mysql>其它操作

  //如果想指定部分权限给一用户,可以这样来写:

  mysql>grant select,update on TomeDB.* to [email protected] identified by ‘Tome’;

  //刷新系统权限表。

  mysql>flush privileges;

  mysql> 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代替,表示赋予用户全部权限。

  当数据库名称。表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表的权限。

  用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用’%’表示从任何地址连接。

  ‘连接口令’不能为空,否则创建失败。

  例如:

  mysql>grant select,insert,update,delete,create,drop on vtdc.employee to ee@10.25.197.95 identified by ‘123′;

  给来自10.25.197.95的用户 ee 分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。

  mysql>grant all privileges on vtdc.* to [email protected] identified by ‘123′;

  给来自10.25.197.95的用户 ee 分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。

  mysql>grant all privileges on *.* to  [email protected] identified by ‘123′;

  给来自10.25.197.95的用户 ee分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。

  mysql>grant all privileges on *.* to  [email protected] identified by ‘123′;

  给本机用户 ee分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。


3.删除用户

  @>mysql -u root -p

  @>密码

  mysql>DELETE FROM mysql.user WHERE User=”Tome”

  mysql>flush privileges;

  //删除用户的数据库

  mysql>drop database TomeDB;


4.修改指定用户密码

  @>mysql -u root -p

  @>密码

  mysql>update mysql.user set password=password(‘新密码’) where User=”Tome” and Host=”localhost”;

  mysql>flush privileges;

  mysql>quit;


5.如果使用root无法连接本地库的话:

   提示:1045 access denied for user ‘root‘@‘localhost‘ using password yes

方法一: 

     # /etc/init.d/mysql stop 

     # mysqld_safe --user=mysql --skip-grant-tables --skip-networking & 

     # mysql -u root mysql 

    mysql> UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’; 

    mysql> FLUSH PRIVILEGES; 

    mysql> quit 

    # /etc/init.d/mysql restart 

    # mysql -uroot -p 

    Enter password: <输入新设的密码newpassword> 

    mysql> 


方法二: 

  直接使用/etc/mysql/debian.cnf文件中[client]节提供的用户名和密码: 

   # mysql -udebian-sys-maint -p 

   Enter password: <输入[client]节的密码> 

   mysql> UPDATE mysql.user SET Password=PASSWORD(’newpassword’) where       USER=’root’; 

   mysql> FLUSH PRIVILEGES; 

   mysql> quit 

   # mysql -uroot -p 

  Enter password: <输入新设的密码newpassword> 

  mysql> 


以上是关于如何在win系统下给mysql分配权限的主要内容,如果未能解决你的问题,请参考以下文章

Linux下给mysql创建用户并分配权限

Linux下给mysql创建用户并分配权限

Linux系统下给非root用户添加sudo权限

如何给mysql用户分配权限

如何给mysql用户分配权限

在win10下给vs2013配置opencv3.0