打造个人直播间(三)卸载、重装mysql,创建直播用户表
00 前言
因为后台服务需要用到mysql数据库,但是因为之前安装过,密码又忘掉了,尝试了几种方法,发现都不能跳过密码登录,所以干脆把mysql卸载重装了。
环境:CentOS 7。
安装包:mysql 5.7。
01 卸载数据库
# 卸载mysql服务yum remove -y mysql mysql-server mysql-libs mysql-server;# 删除所有mysql相关数据find / -name 'mysql*' | xargs rm -rf;
删除其余rpm包
rpm -qa|grep mysql# 查询出来的rpm使用yum remove掉或者使用rpm -e命令删除
查出内容如下
[root@hostone lib]# rpm -qa|grep mysqlmysql57-community-release-el7-8.noarchmysql-community-common-5.7.29-1.el7.x86_64
继续删除
rpm -e mysql57-community-release-el7-8.noarchrpm -e mysql-community-common-5.7.29-1.el7.x86_64
02 安装
下载安装包
# 创建mysql安装包存放文件夹mkdir -p /usr/local/src/mysql# 进入目录cd /usr/local/src/mysql# 下载5.7 安装包wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm# 配置安装依赖yum localinstall -y mysql57-community-release-el7-8.noarch.rpm# 安装数据库yum install -y mysql-community-server# 数据库启动systemctl start mysqld
03 登录
第一次启动,从mysqld.log中查看初始化密码
# 查看初始化密码grep 'temporary password' /var/log/mysqld.log
可以看到,查询密码如下
[root@hostone mysql]# grep 'temporary password' /var/log/mysqld.log2020-02-18T21:46:40.622767Z 1 [Note] A temporary password is generated for root@localhost: p8)<7:geYY;-
使用【mysql -u root -p】命令登录,密码为p8)<7:geYY;-
[root@hostone mysql]# mysql -u root -pEnter password:Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 2Server version: 5.7.29Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
登录成功,修改root密码
mysql> SET PASSWORD = PASSWORD('Db@369012');Query OK, 0 rows affected, 1 warning (0.00 sec)
可以看到,我的新密码为Db@369012。当然,我随后会把这个密码改掉。
04 创建数据库、用户及数据表
数据库终于搞定了,接着就要创建我们需要的数据表了。
# 查看数据库show databases;# 创建一个新的数据库livecreate database live;# 选择进入刚刚创建的live数据库use live;# 查看mysql库下有哪些数据表,可以看到是空的show tables;# 创建数据表create table user( id varchar(20),random_name varchar(50));
添加一个非root用户
# use mysql,创建用户live,并赋权GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON TUTORIALS.* TO 'live'@'%' IDENTIFIED BY 'Live@123';# 给用户赋权指定数据库操作权限grant all privileges on live.* to 'live'@'%';# 刷新权限FLUSH PRIVILEGES;
报错远程机器无法访问,"Host '183.160.28.242' is not allowed to connect to this MySQL server"。
修改访问权限
# 进入mysql DBuse mysql# 修改host为%update user set host = '%';# 再次查看select host, user from user;+------+---------------+| host | user |+------+---------------+| % | live || % | mysql.session || % | mysql.sys || % | root |+------+---------------+4 rows in set (0.00 sec)# 更改host后,发现客户端还是无法连接,因为没有刷新权限FLUSH PRIVILEGES;
刷新权限后可以了。
