1、通过 SecureCRT 连接到阿里云 CentOS7 服务器;
2 进入到目录 /usr/local/ 中:
cd /usr/local/
3 创建目录 /usr/local/tools,如果有则忽略:
mkdir -p tools
4 创建 /usr/local/mysql 目录,如果已存在则忽略:
mkdir -p mysql
5 进入到目录 /usr/local/tools 中:
cd tools/
6 查看系统中是否已安装 MySQL 服务:
rpm -qa | grep mysql
或
yum list installed | grep mysql
7 如果已安装则删除 MySQL 及其依赖的包:
yum -y remove mysql-libs.x86_64
8 下载 mysql57-community-release-el7-8.noarch.rpm 的 YUM 源:
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
9 安装 mysql57-community-release-el7-8.noarch.rpm:
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
安装完后,得到如下两个包:
mysql-community.repo
mysql-community-source.repo
10 安装 MySQL:
yum install mysql-server
遇到疑问的地方,一路 Y 下去即可;
11 给mysql重置密码,mysql5.7之后user表已经没有password字段了,保留了password函数,密码字段变成authentication_string
12 在配置文件/etc/my.cnf添加skip-grant-tables一行,这样mysql就可以免密登陆了。
13 重启mysql,service mysqld restart
14 设置密码:update user set authentication_string=password('你的密码') where User='root'
15 刷新权限,使之生效 flush privileges;
需要把/etc/my.cnf添加的skip-grant-tables注释掉
16 当设置好之后,登陆mysql,有时候会提示ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
需要重新设置下密码,而且密码不能太简单。
set password=password("你的密码");
flush privileges;
17 设置其他ip可以通过工具链接数据库,也就是开放权限
grant all privileges on *.* to root@"%" identified by "新密码";
18 如果是阿里云,需要配置3306安全组规则,才可以连接。