linux Grant 添加 MySql 用户
我安装的版本:
mysql> select version();
+------------+
| version() |
+------------+
| 5.0.22-log |
+------------+
1 row in set (0.05 sec)
添加用户:
mysql> grant select,update,insert,delete on *.* to jimmy@AS3 identified by "jimmy";
Query OK, 0 rows affected (0.00 sec)
mysql> select host,user,password from user;
+-----------+--------+-------------------------------------------+
| host | user | password |
+-----------+--------+-------------------------------------------+
| localhost | root | |
| AS3 | root | |
| AS3 | | |
| localhost | | |
| AS3 | yuanjl | 550185cd02026208 |
| localhost | yuanjl | 550185cd02026208 |
| AS3 | jimmy | *1E7F320B8F580AADC02E8A70285E46A8CFDA3359 |
+-----------+--------+-------------------------------------------+
7 rows in set (0.00 sec)
mysql> quit
Bye
[root@AS3 mysql-5.0.22]# mysql -pjimmy -u jimmy -h AS3 mysql
ERROR 1251: Client does not support authentication protocol requested by server; consider upgrading MySQL client
[root@AS3 mysql-5.0.22]# mysql -u root -h AS3 mysql
Welcome to the MySQL monitor. Commands end with ; or /g.
Your MySQL connection id is 36 to server version: 5.0.22-log
Type 'help;' or '/h' for help. Type '/c' to clear the buffer.
mysql> update user set password=old_password('jimmy') where user='jimmy' and host='AS3';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> quit
Bye
[root@AS3 mysql-5.0.22]# mysql -pjimmy -u jimmy -h AS3 mysql
Welcome to the MySQL monitor. Commands end with ; or /g.
Your MySQL connection id is 37 to server version: 5.0.22-log
Type 'help;' or '/h' for help. Type '/c' to clear the buffer.
mysql>
个人教训,在添加Mysql帐号的时候,一定要主义用户名和主机(local和%)均要被引号引起,否则命令即错
命令方式的.注意每行后边都跟个 ; 表示一个命令语句结束.
格式:grant select on 数据库.* to “用户名”@“登录主机” identified by "密码";
例1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MYSQL,然后键入以下命令:
grant select,insert,update,delete on *.* to “test1”@"%" Identified by "abc";
补充所有权限语句:
由例1得: 将执行权限(select,insert,....)改为all privileges,即表示拥有所有权限,包括创建数据库权限,删除数据库,已经不局限于在一个数据库内操作
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';
例1(非补充)中增加的用户是十分危险的,因为你的主机是%,%即代表任意位置的主机,而local即词义"本地",假如,某个人想知道test1的密 码,那么他就可以在internet上的任何一台电脑上连接到你的mysql数据库并对你的数据可以为所欲为了,解决办法见例2。
根据例1补充语句,此语句尽量不要在Mysql服务器上使用,如果你的服务器处于托管或远端地带,如果你需要远程管理Mysql服务器,而由不想通过超级 终端登录到服务器上,那么你只好用此语句,但要清楚一件事,即你能使用此方法连接服务器,其他人也可以,所以要保管好你的mysql密码
例2、 增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作 (localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据 库,只能通过MYSQL主机上的web页来访问了。
grant select,insert,update,delete on mydb.* to “test2”@localhost identified by "abc";
如果你不想test2有密码,可以再打一个命令将密码消掉。
grant select,insert,update,delete on mydb.* to “test2”@localhost identified by "";
grant select,insert,update,delete on dez.* to “test2”@"%" identified by "123456";
数据库重要命令:mysqldump ;mysql
系统环境: Windows Xp Sp2
示例数据库: Demo (内部表可自己任意建立)
数据库用户名: root (也可以是具有管理操作权限的用户名)
数据库登录密码: dbuserkey
测试环境中mysql已在环境变量中设置成功即 可在命令行中输入mysql启动mysql数据库引擎
A,完全导出Demo所有数据和结构 (完全备份)
在任目录中(比如 D:/mydb )建立批处理文件backup.bat,内容如下:
mysqldump -uroot -pdbuserkey --add-locks --opt Demo>D:/mydb/Demo.sql;
@pause
B,完全导入Demo所有数据和结构 (完全恢复)
在与backup.bat同目录中建立批处理文件restore.bat 内容如下:
mysql -uroot -pdbuserkey demo<D:/mydb/Demo.sql;
@pause
C,测试
开启mysql数据库引擎 net start mysql
运行 A中批处理 会看到D:/mydb下生成Demo.sql
然后执行 Drop Database Demo命令删除Demo数据库
建立Demo数据库 Create Database Demo;
运行 B 中比处理 即可恢复所有数据和结构
D,常用命令
登录或连接mysql数据库服务
mysql -h主机地址 -u用户名 -p用户密码;
推出mysql 数据库连接
Exit
停止本地mysql数据库服务
Net stop mysql
修改密码
mysqladmin -u用户名 -p旧密码 password 新密码;
显示数据库列表
Show Database;
使用数据库
Use DatabaseName;
显示当前选择数据库
Select Database();
打开表
Show TableName;
显示数据表的结构
Describe TableName;
当前数据库包含的表信息:
Show Tables; (注意:最后有个s)
建立数据库
Create DataBase databaseName;
建立表
Use databaseName;
Create Table tableName (字段设定列表);
删库和删表
Drop Database databaseName;
Drop Table tableName;
将表中记录清空
Delete From tableName;
表名字更改
Rename Table tableA to tableB;
SQL结构化查询语句命令见mysql doc 文档
Mysql创建删除用户
Grant select,insert,update,delete on *[(数据库)].* to 用户名@登录主机 identified by "密码"
命令方式的.注意每行后边都跟个 ; 表示一个命令语句结束.
格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码"
==以下来自网络==
例1,增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询,插入,修改,删除的权限.首先用以root用户连入MYSQL,然后键入以下命令:
grant select,insert,update,delete on *.* to test1@"%" Identified by "abc";
例1增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见例2.
例 2,增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询,插入,修改,删除的操作 (localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据 库,只能通过MYSQL主机上的web页来访问了.
grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc";
如果你不想test2有密码,可以再打一个命令将密码消掉.
grant select,insert,update,delete on mydb.* to test2@localhost identified by "";
这样就创建了一个名为:phplamp 密码为:1234 的用户.
然后登录一下.
mysql>exit;
mysql -u phplamp -p
输入密码
mysql>登录成功
2.为用户授权.
//登录MYSQL(有ROOT权限).我里我以ROOT身份登录.
mysql -u root -p
密码
//首先为用户创建一个数据库(phplampDB)
mysql>create database phplampDB;
//授权phplamp用户拥有phplamp数据库的所有权限.
>grant all privileges on phplampDB.* to phplamp@localhost identified by '1234';
//刷新系统权限表
mysql>flush privileges;
mysql>其它操作
/*
如果想指定部分权限给一用户,可以这样来写:
mysql>grant select,update on phplampDB.* to phplamp@localhost identified by '1234';
//刷新系统权限表.
mysql>flush privileges;
*/
3.删除用户.
mysql -u root -p
密码
mysql>Delete FROM user Where User="phplamp" and Host="localhost";
mysql>flush privileges;
//删除用户的数据库
mysql>drop database phplampDB;
4.修改指定用户密码.
mysql -u root -p
密码
mysql>update mysql.user set password=password('新密码') where User="phplamp" and Host="localhost";
mysql>flush privileges;
5.列出所有数据库
mysql>show database;
6.切换数据库
mysql>use '数据库名';
7.列出所有表
mysql>show tables;
8.显示数据表结构
mysql>describe 表名;
9.删除数据库和数据表
mysql>drop database 数据库名;
mysql>drop table 数据表名;
10. 显示表的结构
describe "tabaleName";
cmd下连接mysql:
mysql -uroot -p 回车 注意密码不要打在-p后面
linux Grant 添加 MySql 用户的更多相关文章
- linux下添加mysql用户并授权
-------------------暂停mysqlservice mysqld stop 忘记密码修改流程1,修改mysql配置文件 /etc/my.cnf,在[mysqld]下添加一行skip-g ...
- 在linux中添加ftp用户,并设置相应的权限
在linux中添加ftp用户,并设置相应的权限,操作步骤如下: 1.环境:ftp为vsftp.被限制用户名为test.被限制路径为/home/test 2.建用户:在root用户下: useradd ...
- linux中添加ftp用户,并设置相应的权限
在linux中添加ftp用户,并设置相应的权限,操作步骤如下: 1.环境:ftp为vsftp.被限制用户名为test.被限制路径为/home/test 2.建用户:在root用户下: useradd ...
- Linux——CentOS7添加/删除用户和用户组1
Linux--CentOS7添加/删除用户和用户组 2017.05.02 19:58 23012浏览 前言 今天又重新装了centos7突然有关用户和用户组有关的命令记不清了,所以记一下,也方便你 ...
- 给linux虚拟机添加Samba用户
Window系统连上我们的开发机Linux,自然需要在Samba里添加一个新用户. linux-06bq:/usr/local/services/samba/bin # ./smbpasswd -a ...
- Linux系统添加新用户
Linux系统中一般不直接使用root用户进行操作,需要添加新的用户. 首先,查看当前系统已有的用户 cat /etc/passwd 查看用户组 cat /etc/group 其次,添加想要的用户组和 ...
- linux之添加切换用户、系统变量、selinux、防火墙、系统中文乱码的讲解
######linux用户分类1.root 用户 linux皇帝 2.普通用户 贫民百姓 [root@oldboyedu-01 oldboy]# useradd oldboy[root@oldboye ...
- linux SVN添加新用户
首先找到用户文件:authz.conf; 用vi 编辑authz.conf文件在develps 后面添加你要添加的用户名:如图: 上图:cheny就是我后面添加上去的用户名 按Esc :wq保存au ...
- linux中添加一个用户到指定用户组的两种方式,修改一个用户到指定用户组的一种方式
添加一个用户到指定用户组: gpasswd –a 用户名 组名usermod –G 组名 用户名 //第一种:gpasswd –a 用户名 组名 [root@localhost ~]# id user ...
随机推荐
- RHEL 6.1字符界面无法登录SSH却能登录
1.具体版本: 2.具体现象: 每次输入用户名密码登录之后又跳到这个界面.但是用ssh却可以登录. 3.查看日志 [root@localhost ~]# tail -f /var/log/secure ...
- wpf image控件循环显示图片 以达到动画效果 问题及解决方案
1>最初方案: 用wpf的image控件循环显示图片,达到动画效果,其实就是在后台代码动态改变Image.Source的值,关键代码: ; i < ; i++)//六百张图片 { Bitm ...
- poj 1113 Mall
Mall 水题:注意题目上面有一个至少离城堡的距离为L,其实思考一下就知道是指离凸包(凸多边形)的距离为L,这时很容易知道外围的圆的圆心角叠加之后就是一个整圆:和poj2187一样使用graham形成 ...
- Linux-ubuntu
在VMware安装ubuntu时磁盘分配如下: /boot 100MB / 2G swap 512MB /home 5G /var 1G /usr 5G+. 设置root权限:sudo passwd ...
- C语言之指针
以32为系统为例. 1.指针与地址指针是一种变量,保存了所指向对象的地址.1.1 定义int i = 10;int *p = &i; //定义了一个指针p,它指向一个int型的变量&是 ...
- Oracle数据库插入图片和读取图片
package com.basicSql.scroll_page; import java.io.File; import java.io.FileInputStream; import java.i ...
- windows下STM32开发环境的搭建
一.概述 1.说明 笔者已经写了一篇Linux下STM32开发环境的搭建 ,这两篇文章的最区别在于开发环境所处的系统平台不一样,而其实这个区别对于开发环境的搭建其实影响不大,制作局部上的操作上发生了改 ...
- sencha touch mvc
controller: Ext.define('MyApp2.controller.MyController1', { extend: 'Ext.app.Controller', config: { ...
- linux环境下验证码不显示的几种情况
linux环境下验证码不显示的几种情况 gd库扩展没有安装. 查看phpinfo(),看看有没有安装gd库 yum安装gd库或者phpize安装 安装完成后记得重启php-fpm bom头的原因 在生 ...
- web中自定义鼠标样式
实现一个功能:鼠标移动到一个图片左边显示左箭头,移动到右边显示右箭头. 实现方法:一个img上面定位两个div,div的样式如下: .toleft { width: 200px; height: 30 ...