`
kongdesheng
  • 浏览: 36011 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论
阅读更多

一:进入Mysql 创建数据库命令
CREATE DATABASE `dbpacketracer` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

 

二:导入sql文件
Mysql命令行设置
在环境变量 path="mysql/bin"

命令行进入mysql -h houstname -u username -p
将数据库导出:
mysqldump -h localhost -u root -p admin >e"\mysql\mydb.sql
将数据库的表导出:
mysqldump -h localhost -u root -p admin 表名>e"\mysql\mydb.sql

导入:
mysql -h localhost -u root -p mydb2<e:\mysql\mydb.sql

source命令:
source d:\mydb.sql

 

三:在Mysql中创建用户并授权:
1:CREATE USER user [IDENTIFIED BY [PASSWORD] 'password']    [, user [IDENTIFIED BY [PASSWORD] 'password']] ...CREATE USER用于创建新的MySQL账户。要使用CREATE USER,您必须拥有mysql数据库的全局CREATE USER权限,或拥有INSERT权限。对于每个账户,CREATE USER会在没有权限的mysql.user表中创建一个新记录。如果 账户已经存在,则出现错误。

使用自选的IDENTIFIED BY子句,可以为账户给定一个密码。user值和 密码的给定方法和GRANT语句一样。特别是,要在纯文本中指定密码,需忽略PASSWORD关键词。要把 密码指定为由PASSWORD()函数返回的混编值,需包含关键字PASSWORD。

2.使用GRANT语句
最好的方法是使用GRANT语句,因为这样更精确,错误少。从MySQL 3.22.11起提供了GRANT;它的主要用途是来给帐户授权的,但也可用来建立新帐户并同时授权。注意:当mysql运行于no_auto_create_user时要提供新建用户的密码,否则不能创新用户。
下面的示例说明如何使用MySQL客户端程序来设置新用户。
首先,使用MySQL程序以MySQL root用户来连接服务器:

shell> MySQL --user=root MySQL

如果你为root账户指定了密码,还需要为该MySQL命令和本节中的其它命令提供--password或-p选项。

以root连接到服务器上后,可以添加新账户。下面的语句使用GRANT来设置四个新账户:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost'

    ->     IDENTIFIED BY 'some_pass' WITH GRANT OPTION;

mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%'

    ->     IDENTIFIED BY 'some_pass' WITH GRANT OPTION;

mysql> GRANT RELOAD,PROCESS ON *.* TO 'admin'@'localhost';

mysql> GRANT USAGE ON *.* TO 'dummy'@'localhost';

用GRANT语句创建的账户有下面的属性:

·         其中两个账户有相同的用户名monty和密码some_pass。两个账户均为超级用户账户,具有完全的权限可以做任何事情。一个账户 ('monty'@'localhost')只用于从本机连接时。另一个账户('monty'@'%')可用于从其它主机连接。请注意monty的两个账户必须能从任何主机以monty连接。没有localhost账户,当monty从本机连接时,mysql_install_db创建的localhost的匿名用户账户将占先。结果是,monty将被视为匿名用户。原因是匿名用户账户的Host列值比'monty'@'%'账户更具体,这样在user表排序顺序中排在前面。(user表排序的讨论要参考mysql手册)。

·         一个账户有用户名admin,没有密码。该账户只用于从本机连接。授予了RELOAD和PROCESS管理权限。这些权限允许admin用户执行mysqladmin reload、mysqladmin refresh和mysqladmin flush-xxx命令,以及mysqladmin processlist。未授予访问数据库的权限。你可以通过GRANT语句添加此类权限。

·         一个账户有用户名dummy,没有密码。该账户只用于从本机连接。未授予权限。通过GRANT语句中的USAGE权限,你可以创建账户而不授予任何权限。它可以将所有全局权限设为'N'。假定你将在以后将具体权限授予该账户。

3.直接操作MySQL授权表
    除了GRANT,你可以直接用INSERT语句创建相同的账户,然后使用FLUSH PRIVILEGES告诉服务器重载授权表。

shell> mysql --user=root mysql

mysql> INSERT INTO user    ->     VALUES('localhost','monty',PASSWORD('some_pass'),    ->     'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');mysql> INSERT INTO user    ->     VALUES('%','monty',PASSWORD('some_pass'),    ->     'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');mysql> INSERT INTO user SET Host='localhost',User='admin',    ->     Reload_priv='Y', Process_priv='Y';mysql> INSERT INTO user (Host,User,Password)    ->     VALUES('localhost','dummy','');mysql> FLUSH PRIVILEGES;当你用INSERT创建账户时使用FLUSH PRIVILEGES的原因是告诉服务器重读授权表。否则,只有重启服务器后更改方会被注意到。使用 GRANT,则不需要使用FLUSH PRIVILEGES。

用INSERT使用PASSWORD()函数是为了加密密码。GRANT语句为你加密密码,因此不需要PASSWORD()。

'Y'值启用账户权限。对于admin账户,还可以使用更加可读的INSERT扩充的语法(使用SET)。

在为dummy账户的INSERT语句中,只有user表中的Host、User和Password列记录为指定的值。没有一个权限列为显式设置,因此MySQL将它们均指定为 默认值'N'。这样等同于GRANT USAGE的操作。

请注意要设置超级用户账户,只需要创建一个权限列设置为'Y'的user表条目。user表权限为全局权限,因此其它 授权表不再需要条目。

4.举几个应用grant创建帐户和授权的例子

下面的例子创建3个账户,允许它们访问专用数据库。每个账户的用户名为custom,密码为obscure。

要想用GRANT创建账户,使用下面的语句:

shell> MySQL --user=root MySQLshell> mysql --user=root mysqlmysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP    ->     ON bankaccount.*    ->     TO 'custom'@'localhost'    ->     IDENTIFIED BY 'obscure';mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP    ->     ON expenses.*    ->     TO 'custom'@'whitehouse.gov'    ->     IDENTIFIED BY 'obscure';mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP    ->     ON customer.*    ->     TO 'custom'@'server.domain'    ->     IDENTIFIED BY 'obscure';这3个账户可以用于:

·         第1个账户可以访问bankaccount数据库,但只能从本机访问。

·         第2个账户可以访问expenses数据库,但只能从主机whitehouse.gov访问。

·         第3个账户可以访问customer数据库,但只能从主机server.domain访问。

要想不用GRANT设置custom账户,使用INSERT语句直接修改 授权表:

shell> mysql --user=root mysqlmysql> INSERT INTO user (Host,User,Password)    ->     VALUES('localhost','custom',PASSWORD('obscure'));mysql> INSERT INTO user (Host,User,Password)    ->     VALUES('whitehouse.gov','custom',PASSWORD('obscure'));mysql> INSERT INTO user (Host,User,Password)    ->     VALUES('server.domain','custom',PASSWORD('obscure'));mysql> INSERT INTO db    ->     (Host,Db,User,Select_priv,Insert_priv,    ->     Update_priv,Delete_priv,Create_priv,Drop_priv)    ->     VALUES('localhost','bankaccount','custom',    ->     'Y','Y','Y','Y','Y','Y');mysql> INSERT INTO db    ->     (Host,Db,User,Select_priv,Insert_priv,    ->     Update_priv,Delete_priv,Create_priv,Drop_priv)    ->     VALUES('whitehouse.gov','expenses','custom',    ->     'Y','Y','Y','Y','Y','Y');mysql> INSERT INTO db    ->     (Host,Db,User,Select_priv,Insert_priv,    ->     Update_priv,Delete_priv,Create_priv,Drop_priv)    ->     VALUES('server.domain','customer','custom',    ->     'Y','Y','Y','Y','Y','Y');mysql> FLUSH PRIVILEGES; 前3个INSERT语句在user表中加入条目,允许用户custom从各种主机用给定的密码进行连接,但不授予全局权限(所有权限设置为 默认值'N')。后面3个INSERT语句在user表中加入条目,为custom授予bankaccount、expenses和customer数据库权限,但只能从合适的主机访问。通常若直接修改 授权表,则应告诉服务器用FLUSH PRIVILEGES重载授权表,使权限更改生效。

如果你想要让某个用户从给定域的所有机器访问(例如,mydomain.com),你可以在账户名的主机部分使用含'%'通配符的GRANT语句:

mysql> GRANT ...    ->     ON *.*    ->     TO 'myname'@'%.mydomain.com'    ->     IDENTIFIED BY 'mypass';要想通过直接修改授权表来实现:

mysql> INSERT INTO user (Host,User,Password,...)    ->     VALUES('%.mydomain.com','myname',PASSWORD('mypass'),...);mysql> FLUSH PRIVILEGES;

5.创建账户的其它方法是使用MySQL账户管理功能的第三方程序。phpMyAdmin即是一个程序。

从MySQL删除用户账户
要想移除账户,应使用DROP USER语句。

 

五:修改mysql数据库中用户的密码:
update user set password=password("新的密码") where user="用户名"
更新完一定要:FLUSH PRIVILEGES;  否则更新不成功。

 

分享到:
评论

相关推荐

    chat聊天室增加mysql记录功能

    在这个项目中,“chat聊天室增加mysql记录功能 nodejs”是一个使用Node.js和Socket.IO实现的聊天室,它集成MySQL数据库来存储聊天记录。下面我们将深入探讨这个话题,详细介绍如何在Node.js环境中使用MySQL数据库来...

    易语言Mysql记录集查看工具

    【易语言Mysql记录集查看工具】是一款专为易语言编程环境设计的辅助工具,它主要功能是帮助开发者查看和调试Mysql数据库的记录集。该工具的思想是将Mysql查询的结果以类似于专业数据库管理软件如SqlYog的方式在...

    易语言源码Mysql记录集查看工具.rar

    《易语言源码Mysql记录集查看工具》是一款基于易语言开发的实用工具,主要用于查看和分析Mysql数据库中的记录集。此工具的出现,旨在帮助程序员和数据库管理员更便捷地理解和处理Mysql数据库的数据。 易语言,全称...

    易语言源码易语言Mysql记录集查看工具.rar

    在这个"易语言源码易语言Mysql记录集查看工具.rar"压缩包中,包含了一个用易语言编写的用于查看MySQL数据库记录集的工具。 MySQL是一种广泛使用的开源关系型数据库管理系统,它具有高性能、高可靠性以及易于使用的...

    易语言[世恒帮您学易]-Mysql记录集查看工具1.0版(模块代码)源码,

    本资源是“世恒帮您学易”系列中的一个项目——Mysql记录集查看工具的1.0版本源码,主要涉及到易语言与MySQL数据库的交互以及数据的可视化呈现。 该工具的核心功能在于帮助用户查看和理解MySQL数据库中的记录集。...

    易语言Mysql记录集查看工具.zip易语言项目例子源码下载

    易语言Mysql记录集查看工具.zip易语言项目例子源码下载易语言Mysql记录集查看工具.zip易语言项目例子源码下载 1.合个人学习技术做项目参考 2.适合学生做毕业设计参考 3.适合小团队开发项目参考

    易语言Mysql记录集查看工具-易语言

    易语言Mysql记录集查看工具是一款专为易语言开发者设计的辅助工具,旨在帮助程序员更加方便地查看和处理MySQL数据库中的记录集。易语言是一种基于事件驱动的编程环境,其语法简洁,适合初学者和专业人士进行软件开发...

    Simple-ORM, 一个简单的PHP类来访问你的MySQL记录.zip

    Simple-ORM, 一个简单的PHP类来访问你的MySQL记录 简单 ORM简单ORM是面向 PHP & ( 使用 MySQLi )的对象关系映射。 它提供了创建。检索。更新&删除记录的简单方法。这并不适合大型项目,因为它有额外的数据库交互比...

    MYIE-监控IE上网记录-MYSQL记录-有查询器-适用于网吧-或-公司使用-电脑资料.doc

    MYIE 是一款针对IE浏览器的监控程序,它能够记录用户的上网行为并将这些记录存储到MYSQL数据库中,便于在网吧或公司环境中进行管理。MYIE监控系统由多个组件构成,包括MYIE.dll(作为IE插件负责数据收集)、libmysql...

    php随机取mysql记录方法小结

    本文将介绍几种PHP随机获取MySQL记录的方法。 **方法一:Order By Rand()** 这是最常见的一种方法,通过在SQL查询语句中使用`ORDER BY RAND()`来对查询结果进行随机排序,然后利用`LIMIT`限制返回的记录数量。例如...

    Java获取最后插入MySQL记录的自增ID值的3种方法

    在Java编程中,当我们在MySQL数据库中执行插入操作并希望获取新插入记录的自增ID时,有多种方法可以实现这一需求。以下是三种常见的方法,适用于不同的场景。 **方法一:使用PreparedStatement的RETURN_GENERATED_...

    jsp+mysql实现的博客系统

    本项目是一个基于JSP(JavaServer Pages)和MySQL数据库技术构建的博客系统,名为"比克系统"。它是一个完整的博客平台,提供了丰富的功能,适合初学者和开发者用来学习和实践Web应用开发。这个系统的核心特点是利用...

    使用批处理对MySQL进行数据批量操作

    批处理是一种非交互式运行MySQL程序的方法,如同您在MySQL中使用的命令一样,你仍然将使用这些命令。本文介绍了使用批处理对MySQL进行数据批量操作的方法。

    mysql记录耗时的sql实例详解

    以下是对MySQL记录耗时SQL实例的详细解释。 1. **启用慢查询日志** 慢查询日志默认是关闭的,可以通过设置`log_slow_queries`变量来启用。在MySQL的配置文件(通常是`my.cnf`或`my.ini`)的`[mysqld]`段中,添加...

    手机号码归属MySQL数据库SQL文件

    手机号码归属MySQL数据库SQL文件(14M): 导出命令: mysqldump -uroot -p123456 test t_mobilephone_number &gt; /root/mobilephoneNumber.sql 手机号码段:13*;15*;145、147、186、187、188、189 包含记录数:...

    MYSQL5 LOG 分析工具.rar

    MySQL记录日志查询对于跟踪PHP MySQL体系下的MySQL负载调优问题很有用处,比如安装了很多Discuz!插件的用户,这样可以大概排查出那些插件有代码问题。其实启用MySQL的慢查询日志很简单,只需要在MYSQL.INI 增加参数...

    php+mysql天气预报

    一个天气预报的PHP代码,定时更新一个天气预报的PHP代码,定时更新一个天气预报的PHP代码,定时更新一个天气预报的PHP代码,定时更新一个天气预报的PHP代码,定时更新一个天气预报的PHP代码,定时更新一个天气预报的...

    slurmdbd安装和配置记录.pdf

    其中,storageport 需要与 MySQL 的 port 相同,以保证能够通过 MySQL 记录用户作业数据;storageuser 为 MySQL 的账户;storagepass 为对应的账户密码。 3. 运行 SlurmDBD 在配置完成 slurmdbd.conf 之后,需要...

Global site tag (gtag.js) - Google Analytics