centOS7 安装MySQL
centOS7自带MariaDB,这个是MySQL的分支。
一、下载、安装
1、安装wget 命令
yum -y install wget
2、下载MySQL官方的 Yum Repository
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
3、安装Yum Repository
yum -y install mysql57-community-release-el7-10.noarch.rpm
4、安装MySQL服务器
yum -y install mysql-community-server
此时MySQL安装完毕!
二、配置
1、启动MySQL
[root@localhost /]# systemctl start mysqld.service
2、查看MySQL的运行状态
[root@localhost /]# systemctl status mysqld.service
3、寻找MySQL的原始密码
[root@localhost /]# grep "password" /var/log/mysqld.log
得到原始密码:*MrH/o<yi8G6
4、登录MySQL
[root@localhost /]# mysql -uroot -p
5、修改密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '‘new password’;
此时会报错
这是因为MySQL有个密码策略
6、修改密码规范
mysql> set global validate_password_policy=0;
7、再次修改密码(密码需大于8位)
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'xxxxxxxx';
mysql有自己的密码机制
mysql> SHOW VARIABLES LIKE 'validate_password%'; +--------------------------------------+-------+ | Variable_name | Value | +--------------------------------------+-------+ | validate_password_check_user_name | OFF | | validate_password_dictionary_file | | | validate_password_length | 4 | | validate_password_mixed_case_count | 1 | | validate_password_number_count | 1 | | validate_password_policy | LOW | | validate_password_special_char_count | 1 | +--------------------------------------+-------+ 7 rows in set (0.01 sec)
密码的长度是由validate_password_length决定的,而validate_password_length的计算公式是:
validate_password_length = validate_password_number_count+validate_password_special_char_count + (2 * validate_password_mixed_case_count)
8、卸载 Yum Repository
但此时还有一个问题,就是因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:
[root@localhost ~]# yum -y remove mysql57-community-release-el7-10.noarch
三、设置自启动
[root@localhost etc]# vi rc.local
在rc.local文件中添加 service mysql start
四、远程连接
1、开放3306接口
[root@localhost etc]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
重启防火墙
[root@localhost etc]# systemctl restart firewalld.service
2、修改MySQL 远程设置
登录MySQL
对于mysql数据库没有授权,只需要用一条命令就可以了。
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
//远程连接数据库的时候需要输入用户名和密码
用户名:root
密码:123456
指点ip:%代表所有Ip,此处也可以输入Ip来指定Ip
输入后使修改生效还需要下面的语句
mysql>FLUSH PRIVILEGES;
来源:oschina
链接:https://my.oschina.net/u/3421268/blog/1836936