mysql
Posted arctis-zk
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql相关的知识,希望对你有一定的参考价值。
一、下载安装
mysql是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。
想要使用MySQL来存储并操作数据,则需要做几件事情:
a. 安装MySQL服务端
b. 安装MySQL客户端
b. 【客户端】连接【服务端】
c. 【客户端】发送命令给【服务端MySQL】服务的接受命令并执行相应操作(增删改查等)
下载
http:
//dev.mysql.com/downloads/mysql/
安装
windows:
点点点
Linux:
yum install mysql-server
Mac:
点点点
1 解压到任意目录;
2 服务器端运行起来
Windows 服务:
cmd E: 1-软件测试软件13 mysqlmysql-8.0.12-winx64inmysqld –install
net start mysql 启动服务
cd /d E: 1-软件测试软件13 mysqlmysql-8.0.12-winx64in
mysqld
初始化命名:
mysqld --initialize-insecure 创建root用户,没有密码
3 客户端修改环境变量
变量名:MYSQL_HOME
变量值:D:mysql-5.7.20-winx64
path里添加:%MYSQL_HOME%in;
计算机—>属性—>高级系统配置
启动MySQL服务
net start mysql
关闭MySQL服务
linux
安装:
yum install mysql
-
server
服务端启动
mysql.server start
客户端连接
连接:
mysql -h host -u
user
-p
常见错误:
ERROR 2002 (HY000): Can
‘t connect to local MySQL server through socket ‘
/tmp/mysql.sock‘ (2), it means that the MySQL server daemon (Unix)
or
service (Windows)
is
not
running.
退出:
QUIT 或者 Control+D
二、数据库操作
1、显示数据库
show databases;
mysql - 用户权限相关数据
test - 用于用户测试数据
information_schema - MySQL本身架构相关数据
# utf-8
CREATE DATABASE 数据库名称 DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
# gbk
CREATE DATABASE 数据库名称 DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;
创建用户
create user
‘用户名‘
@
‘IP地址‘
identified by
‘密码‘
;
删除用户
drop user
‘用户名‘
@
‘IP地址‘
;
修改用户
rename user
‘用户名‘
@
‘IP地址‘
; to
‘新用户名‘
@
‘IP地址‘
;;
修改密码
set password
for
‘用户名‘
@
‘IP地址‘
= Password(
‘新密码‘
)
PS:用户权限相关数据保存在mysql数据库的user表中,所以也可以直接对其进行操作(不建议)
show grants
for
‘用户‘
@
‘IP地址‘
-- 查看权限
grant 权限 on 数据库.表 to
‘用户‘
@
‘IP地址‘
-- 授权
revoke 权限 on 数据库.表 from
‘用户‘
@
‘IP地址‘
-- 取消权限
all privileges 除grant外的所有权限
select 仅查权限
select,insert 查和插入权限
...
usage 无访问权限
alter 使用alter table
alter routine 使用alter procedure和drop procedure
create 使用create table
create routine 使用create procedure
create temporary tables 使用create temporary tables
create user 使用create user、drop user、rename user和revoke all privileges
create view 使用create view
delete 使用delete
drop 使用drop table
execute 使用call和存储过程
file 使用select into outfile 和 load data infile
grant option 使用grant 和 revoke
index 使用index
insert 使用insert
lock tables 使用lock table
process 使用show full processlist
select 使用select
show databases 使用show databases
show view 使用show view
update 使用update
reload 使用flush
shutdown 使用mysqladmin shutdown(关闭MySQL)
super ????使用change master、kill、logs、purge、master和set global。还允许mysqladmin????????调试登陆
replication client 服务器位置的访问
replication slave 由复制从属使用
对于权限
对于目标数据库以及内部其他:
数据库名.* 数据库中的所有 数据库名.表 指定数据库中的某张表 数据库名.存储过程 指定数据库中的存储过程 *.* 所有数据库
对于用户和IP
用户名@IP地址 用户只能在改IP下才能访问 用户名@192.168.1.% 用户只能在改IP段下才能访问(通配符%表示任意) 用户名@% 用户可以再任意IP下访问(默认IP地址为%)
flush privileges,将数据读取到内存中,从而立即生效。
# 启动免授权服务端 mysqld --skip-grant-tables
以上是关于mysql的主要内容,如果未能解决你的问题,请参考以下文章
连接MySQL出现错误:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)(代码片段
使用 json rereiver php mysql 在片段中填充列表视图
关于mysql驱动版本报错解决,Cause: com.mysql.jdbc.exceptions.jdbc4Unknown system variable ‘query_cache_size(代码片段
修改MySQL密码报错“ERROR 1819 (HY000): Your password does not satisfy the current policy requirements“(代码片段