mysql 添加用户,授权,远程登陆,远程导入导出数据库,用户及权限查询,新增用户无法登陆,
2016-03-10 13:54
906 查看
首先提示一点,当使用新增用户登陆失败:
root@controller:~# mysql -h localhost -ukeystone -ppassword
ERROR 1045 (28000): Access denied for user 'keystone'@'localhost' (using password: YES)
解决方法:
增加普通用户后,执行:
意思是删除匿名用户。
OK,搞定,enjoy!
添加用户及授予权限
查询某个用户的权限
查询所有用户:
下面是导入导出数据库
一、导入导出本地数据库
导出:
1、先运行cmd,cd到mysql安装目录中的bin文件夹
2、mysqldump -u root-p 数据库名 > 导出文件名.sql
其他情况下:
1.导出整个数据库
mysqldump -u用户名 -p 数据库名 > 导出的文件名
mysqldump -uwcnc -p smgp_apps_wcnc > wcnc.sql
2.导出一个表
mysqldump -u用户名 -p 数据库名 表名> 导出的文件名
mysqldump -uwcnc -p smgp_apps_wcnc users> wcnc_users.sql
3.导出一个数据库结构
mysqldump -uwcnc -p -d --add-drop-table smgp_apps_wcnc>d:\wcnc_db.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
导入:
1、dos命令下进入sql:先create database 数据库名;
2、use数据库;
3、sourcec:\....\文件名.sql,后面不需要加分号
二、远程导入导出数据库(或者表)
远程导出语法为:
mysqldump -h[hosname] -u[user_name] -p[password]--default-character-set=[char_set_name] [db_name] >[save_path]
例:然后输入:mysqldump -h119.12.12.11-umysql-pmysql123--default-character-set=utf8 aspchina--skip-lock-tables>d:\aspchina_net.sql
也可以:mysqldump-h119.12.12.11 -u mysql>d:\aspchina_net.sql
119.12.12.11为远程服务器IP,-umysql mysql为数据库用户名,-pmysql123(无空格间隔)mysql123为用户密码,set=utf8为导出MYSQL的编码格式,aspchina为要导出的数据库名,>d:\aspchina_net.sql为导入到你本地的存放路径,aspchina_net.sql你可以自由命名!
远程数据库导入:
如果MYSQL数据库小于2MB可以用mysqldump管理工具导入,如果大小2MB就不行了,因为空间商提供的PHPMYADMIN管理工具一般只能导入小于2MB的数据,这令一些使用MYSQL数据库的站长郁闷了!
现在开始教大家怎么使用mysqldump管理工具导入大于2MB的数据.
1)左下角开始菜单->运行->CMD进入DOS命令行状态
2)D:\Program Files\MySQL\MySQL Server5.0\bin>为你安装的MYSQL安装目录,\bin为mysqldump管理工具所有在的目录;
3)然后输入:mysql -h119.12.12.11 -uaspchina -paspchina123456aspchina< d:\aspchina_net.sql
注释:aspchina_net.sql,如果用户没有创建数据库的权限将不能导入aspchina_net.sql数据库,否则spchina_net.sql只能是多张表不然会出错,这点切记!
删除账户及权限:>drop user 用户名@'%';
>drop user 用户名@ localhost;
root@controller:~# mysql -h localhost -ukeystone -ppassword
ERROR 1045 (28000): Access denied for user 'keystone'@'localhost' (using password: YES)
解决方法:
增加普通用户后,执行:
mysql> use mysql mysql> delete from user where user=''; mysql> flush privileges;
意思是删除匿名用户。
OK,搞定,enjoy!
添加用户及授予权限
grant all privileges on *.* to lhy@'10.163.225.87' identified by '123'; *.*代表所有表,lhy是账户,‘123′是密码, “10.163.225.87“是ip,当ip地址是“%”时匹配所有地址。
GRANT USAGE ON *.* TO 'discuz'@'localhost' IDENTIFIED BY PASSWORD '*C242DDD213BE9C6F8DA28D49245BF69FC79A86EB'; GRANT ALL PRIVILEGES ON `discuz`.* TO 'discuz'@'localhost'; 我先按我的理解解释一下上面两句的意思 建立一个只可以在本地登陆的 不能操作的用用户名 discuz 密码为 ***** 已经加密了的 然后第二句的意思是 ,给这个discuz用户操作discuz数据库的所有权限 使用GRANT GRANT命令用来建立新用户,指定用户口令并增加用户权限。其格式如下: mysql> GRANT <privileges> ON <what> -> TO <user> [IDENTIFIED BY "<password>"] -> [WITH GRANT OPTION]; 正如你看到的,在这个命令中有许多待填的内容。让我们逐一地对它们进行介绍,并最终给出一些例子以让你对它们的协同工作有一个了解。 <privileges>是一个用逗号分隔的你想要赋予的权限的列表。你可以指定的权限可以分为三种类型: 数据库/数据表/数据列权限: Alter: 修改已存在的数据表(例如增加/删除列)和索引。 Create: 建立新的数据库或数据表。 Delete: 删除表的记录。 Drop: 删除数据表或数据库。 INDEX: 建立或删除索引。 Insert: 增加表的记录。 Select: 显示/搜索表的记录。 Update: 修改表中已存在的记录。
查询某个用户的权限
show grants for 你的用户; show grants for root@'localhost'; show grants for webgametest@10.3.18.158; show create database dbname; 这个可以看到创建数据库时用到的一些参数。 show create table tickets; 可以看到创建表时用到的一些参数
查询所有用户:
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
下面是导入导出数据库
一、导入导出本地数据库
导出:
1、先运行cmd,cd到mysql安装目录中的bin文件夹
2、mysqldump -u root-p 数据库名 > 导出文件名.sql
其他情况下:
1.导出整个数据库
mysqldump -u用户名 -p 数据库名 > 导出的文件名
mysqldump -uwcnc -p smgp_apps_wcnc > wcnc.sql
2.导出一个表
mysqldump -u用户名 -p 数据库名 表名> 导出的文件名
mysqldump -uwcnc -p smgp_apps_wcnc users> wcnc_users.sql
3.导出一个数据库结构
mysqldump -uwcnc -p -d --add-drop-table smgp_apps_wcnc>d:\wcnc_db.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
导入:
1、dos命令下进入sql:先create database 数据库名;
2、use数据库;
3、sourcec:\....\文件名.sql,后面不需要加分号
二、远程导入导出数据库(或者表)
远程导出语法为:
mysqldump -h[hosname] -u[user_name] -p[password]--default-character-set=[char_set_name] [db_name] >[save_path]
例:然后输入:mysqldump -h119.12.12.11-umysql-pmysql123--default-character-set=utf8 aspchina--skip-lock-tables>d:\aspchina_net.sql
也可以:mysqldump-h119.12.12.11 -u mysql>d:\aspchina_net.sql
119.12.12.11为远程服务器IP,-umysql mysql为数据库用户名,-pmysql123(无空格间隔)mysql123为用户密码,set=utf8为导出MYSQL的编码格式,aspchina为要导出的数据库名,>d:\aspchina_net.sql为导入到你本地的存放路径,aspchina_net.sql你可以自由命名!
远程数据库导入:
如果MYSQL数据库小于2MB可以用mysqldump管理工具导入,如果大小2MB就不行了,因为空间商提供的PHPMYADMIN管理工具一般只能导入小于2MB的数据,这令一些使用MYSQL数据库的站长郁闷了!
现在开始教大家怎么使用mysqldump管理工具导入大于2MB的数据.
1)左下角开始菜单->运行->CMD进入DOS命令行状态
2)D:\Program Files\MySQL\MySQL Server5.0\bin>为你安装的MYSQL安装目录,\bin为mysqldump管理工具所有在的目录;
3)然后输入:mysql -h119.12.12.11 -uaspchina -paspchina123456aspchina< d:\aspchina_net.sql
注释:aspchina_net.sql,如果用户没有创建数据库的权限将不能导入aspchina_net.sql数据库,否则spchina_net.sql只能是多张表不然会出错,这点切记!
删除账户及权限:>drop user 用户名@'%';
>drop user 用户名@ localhost;
相关文章推荐
- MySQL数据库中如何使用rand随机查询记录
- MySQL 教程分享
- 安装完 MySQL 后必须调整的 10 项配置
- MYSQL操作中错误The user specified as a definer ('root'@'%') does not exist的解决
- 使用navicat建立与服务器的远程mysql连接
- mysql统计-关于学生成绩
- Mysql性能优化案例 - 覆盖索引分享
- Amoeba mysql读写分离搭建及介绍
- Mysql性能优化案例研究-覆盖索引和SQL_NO_CACHE
- mysql防注入函数
- mac 下面使用mysql(1)-安装mysql
- MySQL 四种事务隔离级的说明
- Mysql常出现的问题
- mysql主从切换(正常切换)
- MySQL存储过程建表
- 解决“Error 1(HY000): Can't create/write file”问题
- 有关WAMPSERVER 环境搭建 如何修改端口,MySQL数据库的修改
- Mysql 事务
- MySQL进程常见的State【转】
- skip-grant-tables:非常有用的mysql启动参数