下载配置mysql
初始登录MySQL
mysql -u 用户名 [-p]
一开始什么都没设置
mysql -uroot
直接就能进去了
exit;
可以正确退出MySQL
设置初始密码
mysqladmin -u 用户 password 密码
mysqladmin -u root password 123
这样的提示并不是设置失败了,而是提示密码太简单了,但是也是设置上了
这次登录使
mysql -u root -p
再输入密码 或者
mysql -u root -p 123
可以直接进去,建议不要用这种,history可以看见密码
查看当前数据库服务的基本信息
status;
查看数据库列表
show databases;
可以看到我们有4个数据库
进入数据库
use 数据库名称
use mysql;
进入数据库成功
查看数据库中的数据表信息
要看哪个表先进入那个库 use 库名称
show tables;
这个是mysql库中的所有表
显示数据表的结构
describe 表名;
或者
describe 库名.表名;
describe user;
或者
describe mysql.user;
创建新的数据库
create database 自定义库名;
create database hello;
创建新的数据表
CREATE TABLE 表名 (字段定义……)
create table tarro (name CHAR(16) NOT NULL, passwd CHAR(48) DEFAULT '', PRIMARY KEY (name));
name设置为主键
删除指定的数据表
drop table 表名;
或者
drop table 数据库名称.表名;
drop table tarro;
删除指定的数据库
drop database 库名;
drop database hello;
向数据表中插入新的数据记录
NSERT INTO 表名(字段1, 字段2, ……) VALUES(字段1的值, 字段2的值, ……)
或者
NSERT INTO 表名 VALUES(字段1的值, 字段2的值, ……)
insert into tarro(name,passwd) values('tarro',password('123456'));
insert into tarro values('tarro',password('123456'));
从数据表中查找符合条件的数据记录
SELECT 字段名1,字段名2 …… FROM 表名 WHERE 条件表达式
select * from 库名; #查看库内全部内容
select * from hello.tarro where name='tarro';
select * from hello.tarro;
修改、更新数据表中的数据记录
UPDATE 表名 SET 字段名1=值1[,字段名2=值2] WHERE 条件表达式
update hello.tarro set passwd=PASSWORD('') where name='tarro';
将tarro密码改为空
在数据表中删除指定的数据记录
DELETE FROM 表名 WHERE 条件表达式
delete from tarro where name='tarro';
修改root用户密码
在数据库内 方法1
update mysql.user set password=PASSWORD('123456') WHERE user='root';
flush privileges;
放法2
mysqladmin -u root -p password
Enter password: 输入原密码
New password: 新密码
Confirm new password:确认
维护数据库及用户权限
GRANT 权限列表 ON 数据库名.表名 TO 用户名@来源地址 [ IDENTIFIED BY ‘密码’ ]
权限列表:select,insert,update 逗号隔开 all--所有权限
来源地址:%---匹配所有 ,可以为域名、ip地址等
密码选项:省略则为--用户密码为空
授予tom用户密码为123456在服务器本地查询hello数据库中所有表的权限
grant select on hello.* to 'tom'@'localhost' identified by '123456';
mysql -u tom -p123456
登录tom验证
登录回root
mysql -u root -p123456
查看tom在数据库服务器本地的权限
show grants for tom@localhost;
撤销tom用户的所有权限
revoke all on hello.* from 'tom'@'%';
如果取消刚刚的授权
revoke all on hello.* from 'tom'@'localhost';