每次使用mysql都要重新配置环境变量,很烦,干脆记录一下。
打开终端open ~/.bash_profile
输入export PATH=${PATH}:/usr/local/mysql/bin
关闭文件,输入source ~/.bash_profile
立即生效
terminal登陆指令mysql -u root -p
默认用户是root,输入自设密码即可登录;也可用其他账户,将-u 后的root修改为用户名即可。查看可用用户可看文章最后部分。
常用语句:
// 创建数据库
create database [库名];
// 使用数据库
use [库名];
// 删除数据库
drop database [库名];
// 查看数据库
show databases;
// 创建表(id设置了主键)
create table [表名] (id integer primary key auto_increment, name varchar(20), city varchar(10));
//后缀申明主键
create table [表名] (id integer, name varchar(20), city varchar(10),primary key(id) auto_incriment);
//设置外键
create table [表名] (id integer primary key auto_increment, name varchar(20) references [表名](属性), city varchar(10));
// 复制表
create table [新表名] like [原表名];
// 在表中添加新列,原表中修改
alter table [表名] add age integer;
// 查看表结构信息
desc [表名];
// 删除表
drop table [表名];
// 查看数据
select * from [表名]; // 查询全部
select * from [表名] where age = 20; // 过滤查询
select name,city from [表名] where age = 20; // 过滤查询
select * from [表名] where city='南京' order by age desc; // 按照年龄降序查询
select * from [表名] \G; // 多了个\G参数,主要针对少数数据的key-value视图,横向一一对应
// 插入数据
insert into [表名] values('张三','南京',20);
insert into [表名] (name,city,age) values ('张三', "南京", 20);
// 更新数据
update [表名] set age = 25,name = "张叁",city='北京' where id = 1;
// 删除数据
delete from [表名] where age = 20;
可能用到的:
以下语句请在登录数据库系统后使用
- 修改账户登录密码
update mysql.user set Password =PASSWORD('1111') where User='root';
- 使用中提示重设密码时
set PASSWORD=PASSWORD('1234');
- 创建新的用户,由root授权
create user 'u1' identified by 'root';
- 查看已授权的用户
select user from mysql.user;
- 查看当前用户权限
show grants;
- 查看其他用户权限
show grants for user2;
- 授权(前提是有权)
grant [权] on [库名].[表名] to [用户];
如grant select on SPJ.* to user;
给用户user授予查看SPJ库内所有表的权限
在grant语句后+with grant option
意为“转授 ‘授权’ 的权利” - 撤销权限revoke,类似于grant
revoke ··· from ···;
- 删除用户
delete from user where user="user";
自8.0.11版本之后,默认的密码方式发变化,如果出现以下错误提示可以参考博客:https://blog.youkuaiyun.com/youcijibi/article/details/81153789
error:the server requested authentication method unknown to the client
好长时间没有用过以上语句了,如有问题请一一指出,我及时修改,谢谢!