查看系统中是否已安装 MySQL 服务,以下提供两种方式:
rpm -qa | grep mysql
yum list installed | grep mysql
如果已安装则删除 MySQL 及其依赖的包:
yum -y remove mysql-libs.x86_64
下载 mysql57-community-release-el7-8.noarch.rpm 的 YUM 源:
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
安装完后,得到如下两个包:
mysql-community.repo
mysql-community-source.repo
.安装 MySQL,出现提示的话,一路 Y 到底
yum install mysql-server
启动 mysql
systemctl start mysqld.service
查看MySQL运行状态
systemctl status mysqld.service
在 /var/log/mysqld.log 文件中会自动生成一个随机的密码,用于登录
grep "password" /var/log/mysqld.log
将会返回如下内容,末尾字符串就是密码,把它复制下来 然后进入mysql
mysql -u root -p
刚刚的密码
此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
存在问题 密码太简单 会报错 所以修改配置
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
然后查看mysql的密码规则 初始情况下第一个的值是ON,validate_password_length是8 即可OK
mysql> SHOW VARIABLES LIKE 'validate_password%';
刷新权限使之生效:
flush privileges;
设置 MySQL 的字符集为 UTF-8
打开 /etc 目录下的 my.cnf 文件 vim /etc/my.cnf
在 [mysqld] 前添加如下代码:
[client] default-character-set=utf8
在 [mysqld] 后添加如下代码:
character_set_server=utf8
:wq退出
重新登录mysql,看看字符集,6个utf8就完成
show variables like '%character%';
设置远程连接
mysql> use mysql;
查询数据库内容(host字段中,localhost表示只允许本机访问,要实现远程连接,可以将root用户的host改为%,%表示允许任意host访问,如果需要设置只允许特定ip访问,则应改为对应的ip。)
mysql> select user,host from user;
修改root用户的host字段
update user set host="%" where user="root";
刷新
flush privileges;
设置结束 直接连接验证