常常忘记mysql的一些命令行操作,甚至于说,比较复杂的sql格式记不住或忘记了,也可能根本不会考虑去记,因此,做一下汇总,当下次出现恍惚时不至于去百度挨个找,有时就是记不起来,但是只要给点药引子,立马会想起来。
一、mysql基础操作
mysql命令规则:每行sql后边都跟个分号表示一个命令语句结束
1、登录本地mysql数据库
$ mysql -u root -p
$ password
2、更改root密码
mysql>mysqladmin -uroot password 'yourpassword'
3、登录远程mysql数据库(主机地址,端口号,用户,密码)
mysql>mysql -uroot -p -h192.168.137.10 -P3306
4、退出mysql
mysql>exit;
5、启动mysql服务(CentOS下)
systemctl start mysqld.service
6、结束mysql服务(CentOS下)
systemctl stop mysqld.service
7、启动mysql服务(CentOS下)
systemctl restart mysqld.service
二、数据库操作
1、创建数据库
mysql>create databases 数据库名;
2、删除数据库
mysql>drop database 数据库名;
3、修改数据库编码方式
mysql>alter database 数据库名 default character set 编码方式 collate 编码方式_bin;
4、查看所有数据库
mysql>show database;
5、切换数据库
mysql>use '数据库名';
6、查看当前数据库所支持的字符集
mysql>show charset;
三、数据表操作
1、创建数据表
mysql>create table 数据表名 (column_name column_type not null,...)
2、删除数据表
mysql>drop table 数据表名;
3、清空数据表
mysql>truncate table 数据表名;
4、修改数据表名
mysql>alter table 旧表名 rename [to] 新表名;
5、查看数据表结构
mysql>describe 数据表名;
6、列出所有数据表
mysql>show tables;
四、权限控制
1、创建用户(需用root账号登录)。
方式一:
mysql> insert into mysql.user(Host,User,Password) values("localhost","username","password");
方式二:
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
- username:你将创建的用户名
- host:指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,如果想让该用户可以从任意远程主机登陆,可以使用通配符
%
- password:该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器
2、删除用户(需用root账号登录)
mysql>DROP USER 'username'@'host';
3、授权用户并刷新系统权限表(需用root账号登录)
mysql>grant 权限 on 数据库名.数据表名 to 用户名@登录主机 identified by "密码"; mysql>flush privileges;
- 权限:用户的操作权限,如
SELECT
,INSERT
,UPDATE
等,如果要授予所的权限则使用ALL
- 数据表名:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用
*
表示,如*.*
4、取消用户权限
mysql>REVOKE privilege ON databasename.tablename FROM 'username'@'host';
5、修改密码(需用root账号登录)
mysql>update mysql.user set password=password('新密码') where User="test" and Host="localhost"; mysql>flush privileges;
五、表中字段增删改
1、增加字段
ALTER TABLE `数据表名` ADD `字段一` varchar(16) NULL, ADD `字段二` date, ADD `字段三` varchar(16), ADD `字段四` date;
2、删除字段
ALTER TABLE `数据表名` DROP column `字段一`, DROP column `字段二`;
3、修改字段
//修改一个字段的类型 ALTER TABLE `数据表名` MODIFY `字段一` date; //修改一个字段的名称,此时一定要重新指定该字段的类型 ALTER TABLE `数据表名` CHANGE `旧字段名` `新字段名` date;
4、修改字段排序
mysql>alter table 数据表名 modify 字段一 数据类型 first|after 字段二
如有更多操作,继续在此补充......
2019-1-13,望技术有成后能回来看见自己的脚步