MySQL学习
Posted cainiaorukengji
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL学习相关的知识,希望对你有一定的参考价值。
引言
mysql 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。
概念
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。
正文
1、查看MySQL服务是否启动
ps -ef | grep mysqld
如果MySql已经启动,以上命令将输出mysql进程列表。
service mysqld status/service mysql status
如果MySql已经启动,以上命令将输出mysqld is running。
2、启动或停止MySQL
Linux
启动:service mysqld start/service mysql start
关闭:service mysqld stop/service mysql stop
Windows:
启动:net start mysql
停止:net stop mysql
3、连接MySQL
本地连接:
mysql -u username -p Enter password:******
远程连接:
mysql -h ip地址 -P 数据库端口 -u username -p
Enter password:******
4、管理MySQL命令
列出 MySQL 数据库管理系统的数据库列表:(默认数据库:information_schema、performance_schema、mysql、sys)
SHOW DATABASES;
选择要操作的Mysql数据库:
use DATABASESNAME;
显示指定数据库的所有表,使用该命令前需要使用 use 命令来选择要操作的数据库:
SHOW TABLES;
显示数据表的属性,属性类型,主键信息 ,是否为 NULL,默认值等其他信息:
SHOW COLUMNS FROM TBALENAME;
5、创建用户
方法一:(该方法创建出来的用户只有连接数据库的权限,需要后续继续授权。)
只允许指定ip连接:
create user ‘username‘@‘localhost‘ identified by ‘password‘;
允许所有ip连接:(用通配符%表示)
create user ‘username‘@‘%‘ identified by ‘password‘;
方法二:(当数据库存在用户的时候GRANT会对用户进行授权,但当数据库不存在该用户的时候,就会创建相应的用户并进行授权。)
允许访问所有数据库下的所有表:
grant all privileges on *.* to ‘username‘@‘ip‘ identified by ‘password‘ ;
指定数据库下的指定表:
grant all privileges on databasesname.tablename to ‘username‘@‘ip‘ identified by ‘password‘ ;
设置用户拥有所有权限也就是管理员:
grant all privileges on *.* to ‘username‘@‘ip‘ identified by ‘password‘ WITH GRANT OPTION;
设置用户拥有查询插入的权限:
grant select,insert on *.* to ‘username‘@‘ip‘ identified by ‘password‘ WITH GRANT OPTION;
取消用户查询的查询权限:
revoke select on *.* from ‘username‘;
取消用户全部的查询权限:
revoke all privileges on *.* from ‘username‘;
查看当前用户权限:
show grants;
删除用户:
DROP USER username@localhost;
修改后刷新权限:
FLUSH PRIVILEGES;
以上是关于MySQL学习的主要内容,如果未能解决你的问题,请参考以下文章
连接MySQL出现错误:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)(代码片段