1.在命令行运行:taskkill /f /im mysqld.exephp
下面的操做是操做mysql中bin目录下的一些程序,若是没有配置环境变量的话,须要切换到mysql的bin 目录下执行以下语句。否则无效mysql
2.继续在命令行运行:mysqld --skip-grant-tablessql
3.新开一个命令行运行:mysql -u root (若是没有配置mysql的bin环境变量的话须要切换到bin目录下执行此语句)数据库
若是不想改密码,只是想看原来的密码的话。能够在命令行执行这个语句安全
select host,user,password from mysql.user;//便可查看到用户和密码服务器
若是要修改密码的话,在命令行下执行下面的语句并发
update mysql.user set password=password('密码') where user='root';app
delete from mysql.user where user=''; ← 删除匿名用户ide
FLUSH PRIVILEGES;post
完成这些操做后,继续在命令行运行
taskkill /f /im mysqld.exe //安全着想,先结束,由于如今这样是能够用mysql -u root 直接登陆的
net start mysql//启动mysql服务
1.新建用户。
//登陆MYSQL
@>mysql -u root -p
@>密码
//建立用户
mysql> insert into mysql.user(Host,User,Password) values("localhost","phplamp",password("1234"));
//刷新系统权限表
mysql>flush privileges;
这样就建立了一个名为: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;
第一招、mysql服务的启动和中止
net stop mysql
net start mysql
第二招、登录mysql
语法以下: mysql -u用户名 -p用户密码
键入命令mysql -uroot -p, 回车后提示你输入密码,输入12345,而后回车便可进入到mysql中了,mysql的提示符是:
mysql>
注意,若是是链接到另外的机器上,则须要加入一个参数-h机器IP
第三招、增长新用户
格式:grant 权限 on 数据库.* to 用户名@登陆主机 identified by "密码"
如,增长一个用户user1密码为password1,让其能够在本机上登陆, 并对全部数据库有查询、插入、修改、删除的权限。首先用以root用户连入mysql,而后键入如下命令:
grant select,insert,update,delete on *.* to user1@localhost Identified by "password1";
若是但愿该用户可以在任何机器上登录mysql,则将localhost改成"%"。
若是你不想user1有密码,能够再打一个命令将密码去掉。
grant select,insert,update,delete on mydb.* to user1@localhost identified by "";
第四招: 操做数据库
登陆到mysql中,而后在mysql的提示符下运行下列命令,每一个命令以分号结束。
一、 显示数据库列表。
show databases;
缺省有两个数据库:mysql和test。 mysql库存放着mysql的系统和用户权限信息,咱们改密码和新增用户,实际上就是对这个库进行操做。
二、 显示库中的数据表:
use mysql;
show tables;
三、 显示数据表的结构:
describe 表名;
四、 建库与删库:
create database 库名;
drop database 库名;
五、 建表:
use 库名;
create table 表名(字段列表);
drop table 表名;
六、 清空表中记录:
delete from 表名;
七、 显示表中的记录:
select * from 表名;
第五招、导出和导入数据
1. 导出数据:
mysqldump --opt test > mysql.test
即将数据库test数据库导出到mysql.test文件,后者是一个文本文件
如:mysqldump -u root -p123456 --databases dbname > mysql.dbname
就是把数据库dbname导出到文件mysql.dbname中。
2. 导入数据:
mysqlimport -u root -p123456 < mysql.dbname。
不用解释了吧。
3. 将文本数据导入数据库:
文本数据的字段数据之间用tab键隔开。
use test;
load data local infile "文件名" into table 表名;
1:使用SHOW语句找出在服务器上当前存在什么数据库:
mysql> SHOW DATABASES;
2:二、建立一个数据库MYSQLDATA
mysql> CREATE DATABASE MYSQLDATA;
3:选择你所建立的数据库
mysql> USE MYSQLDATA; (按回车键出现Database changed 时说明操做成功!)
4:查看如今的数据库中存在什么表
mysql> SHOW TABLES;
5:建立一个数据库表
mysql> CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));
6:显示表的结构:
mysql> DESCRIBE MYTABLE;
7:往表中加入记录
mysql> insert into MYTABLE values ("hyq","M");
8:用文本方式将数据装入数据库表中(例如D:/mysql.txt)
mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;
9:导入.sql文件命令(例如D:/mysql.sql)
mysql>use database;
mysql>source d:/mysql.sql;
10:删除表
mysql>drop TABLE MYTABLE;
11:清空表
mysql>delete from MYTABLE;
12:更新表中数据
mysql>update MYTABLE set sex="f" where name='hyq';
posted on 2006-01-10 16:21 happytian 阅读(6) 评论(0) 编辑 收藏 收藏至365Key
13:备份数据库
mysqldump -u root 库名>xxx.data
14:例2:链接到远程主机上的MYSQL
假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入如下命令:
mysql -h110.110.110.110 -uroot -pabcd123
(注:u与root能够不用加空格,其它也同样)
三、退出MYSQL命令: exit (回车)
===========================================
MySQL的权限系统围绕着两个概念: 1:认证->肯定用户是否容许链接数据库服务器 2:受权->肯定用户是否拥有足够的权限执行查询请求等。 显然从上面可知,若是认证不成功的话,哪么受权确定是没法进行的。在这里咱们要关注两个表,分别是在MySQL数据库中user表和db表。 user表在某种程度上是独一无二的,由于它是惟一一个在权限请求的认证和受权阶段都起做用的表,也是惟一一个存数MySQL服务器相关权限的权限表。在认证阶段,它只是负责为用户受权访问MySQL服务器,肯定用户每小时的最大链接数和最大并发数;在受权阶段,user肯定容许访问服务器的用户是否被赋予了操做数据库的全局权限,肯定用户每小时的最大查询数和更新数。 db表用于为每一个用户针对每一个数据库赋予权限。具体的能够查看db的字段。 用户和权限管理命令: create user :用于建立新的用户帐户(从5.0版本开始有这个命令),在建立这个用户的时候不分配任何权限,须要在建立以后经过grant命令来给改用户分配相应的权限。 eg:create user guest@localhost identified by '123456'; grant select on mydb.* to guest@localhost; drop user:删除一个用户帐户(注意在4.1.1版本以前只能删除没有任何权限的帐户,5.0.2以后能够删除任何帐户) eg:drop user guest; rename user:能够实现重命名一个用户帐号。 grant:用于管理访问权限,也就是给用户帐号受权。固然它一样能够建立一个新的用户帐户。 eg:grant select, insert, update, delete on new_db.* to guest@'%' identified by '88888888'; grant 权限 on 数据库.表 to 用户 @ 访问方式 identified by 密码 grant select on mydb.* to guest@localhost identified by '123456'; BTW:若是须要一个空密码或者无密码的帐户,必须先用Create User命令,而后经过 grant来分配权限。若是以下操做: grant all privileges on mydb.* to visitor@'%' ;而在数据库user表中没有先建立visitor 用户,则会发生1133错误"Can't find any matching row in the user table"。grant只能创 有密码的帐户。 revoke:删除一个帐户,具体查看MySQL的文档。