MySQL下载和安装
MySQL下载和安装
一:下载
Red Hat Enterprise Linux/CentOS 7.0 发行版已将默认的数据库从 MySQL 切换到 MariaDB
MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。
yum install MariaDB-server MariaDB-client -y 下载服务端和客户端
二:其他操作
mariadb数据库的相关命令是: systemctl start mariadb #启动MariaDB systemctl stop mariadb #停止MariaDB systemctl restart mariadb #重启MariaDB systemctl enable mariadb #设置开机启动
设置开机启动
然后启动mariadb即可
三:初始化MySQL
安装后的mysql的视为一个等级分明的图书馆。
1-root管理员是图书馆的最高管理员,默认没有密码,为它设置密码。
2-删除匿名账户,为root管理员授权远程连接的权限,最好指定特定的ip地址。
3-如果有测试数据库,删掉。
4-刷新权限,让设定生效。
安装完mysql-server 会提示可以运行mysql_secure_installation。运行mysql_secure_installation会执行几个设置: a)为root用户设置密码 b)删除匿名账号 c)取消root用户远程登录 d)删除test库和对test库的访问权限 e)刷新授权表使修改生效
这样会提高mysql的安全性。
四:创建MySQL的普通用户
MySQL图书管理员的权限太大,生产环境下为了更好的协同工作,不同的人维护不同的数据库,不同的用户只能看到特定的数据库,对特定的表有不同的权限。
用户权限相关数据保存在mysql数据库的user表中,所以也可以直接对其进行操作(不建议)
# 创建用户以及设置密码
create user username@'%' identified by 'password'; # 密码必须是字符串形式,用户名可以不加引号,但是最好加上,统一记为字符串类型。
# 删除用户drop user "gyx"@"%"; %是模糊匹配里面的任意数量的任意字符 _任意一个字符
修改用户和修改密码可以不记住,直接删了用户,重新创建用户即可。
修改用户
rename user
'用户名'
@
'IP地址'
; to
'新用户名'
@
'IP地址'
;;
修改密码
set password
for
'用户名'
@
'IP地址'
= Password(
'新密码'
)
五:授权
默认创建的用户的权限很低,只能看到性能数据库。
show grants for '用户'@'IP地址' -- 查看权限 发现只有登录权限 grant 权限 on 数据库.表 to '用户'@'IP地址' -- 授权 revoke 权限 on 数据库.表 from '用户'@'IP地址' -- 取消权限
关于权限
all privileges 除grant外的所有权限
select 仅查权限 select,insert 查和插入权限
usage 无访问权限
对于目标数据库以及内部其他: 数据库名.* 数据库中的所有 数据库名.表 指定数据库中的某张表 数据库名.存储过程 指定数据库中的存储过程 *.* 所有数据库
用户名@IP地址 用户只能在改IP下才能访问 用户名@192.168.1.% 用户只能在改IP段下才能访问(通配符%表示任意) 用户名@% 用户可以再任意IP下访问(默认IP地址为%)
示例 grant all privileges on db1.tb1 TO '用户名'@'IP' grant select on db1.* TO '用户名'@'IP' grant select,insert on *.* TO '用户名'@'IP' revoke select on db1.tb1 from '用户名'@'IP'
flush privileges,将数据读取到内存中,从而立即生效。
看十遍不如自己写一遍!巩固基础,纵横开拓!