1、安装YUM Repo
由于CentOS 的yum源中没有mysql,需要到mysql的官网下载yum repo配置文件。
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
然后进行repo的安装:
rpm -ivh mysql57-community-release-el7-9.noarch.rpm
执行完成后会在/etc/yum.repos.d/目录下生成两个repo文件mysql-community.repomysql-community-source.repo
2、安装MySQL
使用yum命令即可完成安装
yum install mysql-server
启动msyql:
systemctl start mysqld#启动MySQL
配置MySQL
获取安装时的临时密码:
grep'temporary password'/var/log/mysqld.log
登录:
mysql -uroot -padmin123.
登录成功后修改密码:
mysql>update user set authentication_string=password('新密码'),password_expired='N',password_last_changed=now() where user='root';
忘记Root密码
解决方法:
一、通过编辑/etc/my.cnf文件在[mysqld]下面加上skip-grant-tables=1,保存退出;
二、重启MySql服务【systemctl restart mysqld.service】;
三、以root身份登录MySql【mysql -u root】;
四、进入mysql数据库【mysql> use mysql;】;
五、修改root密码:
提示:设置密码提示"Your password does not satisfy the current policy requirements"
首先需要设置密码的验证强度等级,为 LOW 即可,
输入设值语句 “ set global validate_password_policy=LOW; ” 进行设值,
mysql>update user set authentication_string=password('新密码'),password_expired='N',password_last_changed=now() where user='root';
六、退出mysql,再次编辑/etc/my.cnf文件,将第一步中添加的skip-grant-tables=1删掉,重启启动MySql服务即可。
设置账户远程登录
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'admin123.' WITH GRANT OPTION;
设置安全选项:
mysql_secure_installation
其他设置:
关闭#systemctl stop mysqld
重启#MySQLsystemctl restart mysqld
查看MySQL运行状态#MySQLsystemctl status mysqld
设置开机启动 # systemctl enable mysqld
关闭开机启动#systemctl disable mysqld
3、其他配置
开启远程控制
MySQL默认是没有开启远程控制的,必须添加远程访问的用户
grant all privileges on 数据库名.表名 to 创建的用户名(root)@"%"identified by"密码";# 数据库名.表名 如果写成*.*代表授权所有的数据库 flush privileges; #刷新刚才的内容
#如:
grant all privileges on *.* to root@"113.64.243.1" identified by "123456789";
grant all privileges on 数据库名.表名 to 创建的用户名(root)@"%"identified by"密码";# 数据库名.表名 如果写成*.*代表授权所有的数据库 flush privileges; #刷新刚才的内容
#如:
grant all privileges on *.* to root@"113.64.243.1" identified by "123456789";
@ 后面是访问mysql的客户端IP地址(或是 主机名) % 代表任意的客户端,如果填写 localhost 为本地访问(那此用户就不能远程访问该mysql数据库了)。
同时也可以为现有的用户设置是否具有远程访问权限。
配置默认编码为utf8:
vi /etc/my.cnf#添加[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
其他默认配置文件路径:
配置文件:/etc/my.cnf
日志文件:/var/log//var/log/mysqld.log
服务启动脚本:/usr/lib/systemd/system/mysqld.service
socket文件:/var/run/mysqld/mysqld.pid