您的位置:首页 > 数据库 > MySQL

mysql5.7.20安装、配置和基本操作

2018-01-18 17:49 537 查看

环境

oracle linux7.3

数据库:MySQL-5.7.20

mysql的安装

先安装依赖的插件

yum install libaio


去官网下载mysql-5.7.20的tar.gz包;

https://dev.mysql.com/downloads/mysql/

# 将下载包解压到/usr/local/目录下
tar mysql-advanced-5.7.20-linux-glibc2.12-x86_64 -C /usr/local
# 创建一个mysql的用户组
groupadd mysql
# 为用户组添加用户
useradd -r -g mysql mysql
cd /usr/local
# 为解压文件创建一个简单的软链接
ln -s mysql-advanced-5.7.20-linux-glibc2.12-x86_64 mysql
cd mysql
# 创建一个用户数据的文件
mkdir mysql-files
# 将该文件夹交给mysql组下的mysql用户
chown mysql:mysql mysql-files
# 授权
chmod 750 mysql-files
# 执行初始化脚本
cd bin
./mysqld --initialize --user=mysql  # ./mysql_intsall_db脚本初始化方式已经被弃用
# 添加加密
./mysql_ssl_rsa_setup
# 安全启动mysql
./mysqld_safe --user=mysql&

注意:

执行初始化后会出现如下,提示默认密码,记住这个密码

A temporary password is generated for root@localhost: XXXXXXX, XXXXXXX


登录mysql修改初始密码

mysql -u root -p
set password=password('new_password')


如果是系统自带的mysql版本,第一次登陆的时候也需要修改初始密码;

# 去日志找到初始随机密码
cd /var/log
cat mysqld.log | grep password


出现‘A temporary password is generated for root@localhost: xxxxxxx’就是root用户的初始随机密码

更多详细内容参见mysql 5.7以上修改初始密码

将mysqld添加到系统环境变量

vi /etc/profile
# 在末尾添加
export MYSQL_HOME="/usr/local/mysql/"
export PATH="$PATH:$MYSQL_HOME/bin"
# 应用配置
source /etc/profile


设置开机自启动

# 将mysql自带的启动脚本添加到init.d下
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
# 注册到自启动服务
chkconfig --add mysql
chkconfig mysql on

用户相关

查看当前MySQL的所有的用户

use mysql;
select host,user from mysql.user;


查看mysql用户的权限

show grants for root@'localhost';


MySQL创建一个用户

# create user "用户的名称"@"主机的IP,如果任意使用%代替" identified by "登陆的密码,为空则没有密码";
create user 'usrabc'@'%' identified by 'usrabc';


用户授权

授权格式:grant 权限 on 数据库 to 用户名@登录主机;

说明:

权限:指的是privileges,可以使select,insert等,所有的权限使用all;

数据库:写数据库名,表名,所有数据库用.;

用户名@登录主机:给授权的用户和指定的主机,所有主机使用'%';

注意:

授权的用户不能对其他用户进行授权,如果想让该用户可以授权,用以下命令:

grant 权限 on 数据库 to 用户名@登录主机 with grant option;

grant all privileges on *.* to 'username'@'%' with grant option;

# 刷新权限表
flush privileges;

# 退出MySQL重启
service mysql restart


设置更改用户的密码

# root管理员更改其他的用户的密码
set password for 'username'@'%' = password('123456');
# 如果是用户修改密码
set password = password('123456');


撤销用户权限

# 其相关的参数同用户的授权的一样
revore privileges on 数据库 from 'username'@'host';


删除用户

# 使用root操作
drop user 'username'@'host';

卸载并彻底删除

目前我的系统的使用yum安装的,因此使用yum卸载,

$ yum remove mysql


还有许多的残留文件需要删除

# 全局查找mysql文件
find / -name mysql
# 将查找到的每个目录删除
rm -rf xxx -rf xxx ...


重启后可以安装新的mysql了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: