一、安装 MySql
#检测是否已安装
rpm -qa | grep mysql
#卸载
rpm -e mysql
#强力卸载(卸载依赖)
rpm -e --nodeps mysql
下载地址,查看最新版本:MySQL Yum Repository
#下载安装
wget http://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
sudo rpm -ivh mysql80-community-release-el7-3.noarch.rpm #其中,i表示安装,v表示显示安装过程,h表示显示进度
sudo yum update
sudo yum install mysql-community-server
#初始化
sudo mysqld --initialize
#验证安装
mysqladmin --version
#设置 用户和用户组
sudo chown mysql:mysql -R /var/lib/mysql
#启动
#注意,这里需要输入的是linux root用户的密码,而不是mysql的
systemctl start mysqld
#若启动失败,可查看日志解决问题
sudo vim /var/log/mysqld.log
#查看运行状态
systemctl status mysqld
#检查 MySQL 服务器是否启动
ps -ef | grep mysqld
#生成临时密码
sudo grep "password" /var/log/mysqld.log
#使用root用户连接mysql服务器
mysql -u root -p
#设置mysql root用户的密码
mysqladmin -u root password "123456" -p
#关闭正在运行的 MySQL 服务器
mysqladmin -u root -p shutdown
二、管理用户、创建新的数据库(游戏用)、授权(mysql 8.0+)
mysql -u root -p;
#选择要操作的数据库
use mysql;
#创建新用户gamer,密码为123456
#localhost表示仅本地可连接,%表示任意IP可连接
create user 'gamer'@'localhost' identified by '123456';
#创建新数据库game001
create database game001;
#查看数据库是否创建成功
show databases;
#授权
# all privileges 可换成 select,update,insert,delete,drop,create 等操作
# on *.* 中,第一个*通配数据库,第二个*通配数据表
# with grant option 表示该用户可给其它用户赋予权限,但不可能超过该用户所有的权限
grant all privileges on game001.* to 'gamer'@'localhost' with grant option;
#查看用户授权信息
show grants for 'gamer'@'localhost';
#撤权
revoke all privileges on game001.* from 'gamer'@'localhost';
#删除用户
drop user 'gamer'@'localhost';
#修改用户密码
#注意,mysql8.0+默认使用caching_sha2_password。必须使用 mysql_native_password。
#否则将在连接时报错:failed to connect: Client does not support authentication protocol requested by server; consider upgrading MySQL client: 1251 08004
alter user 'gamer'@'localhost' identified with mysql_native_password by '000000';
#查看密码加密方式
select user, plugin from mysql.user;
#刷新权限
#每次修改用户权限或更改密码等操作后执行一下
flush privileges;
#用新用户登录、选择操作新数据库
mysql -u gamer -p;
use game001;
三、openresty 中使用 mysql
使用 openresty的mysql模块,lua-resty-mysql。文档及示例在其readMe中。
四、附mysql常见操作命令
todo
五、附sql常见语句
todo