阿里云Linux CentOS安装MySQL
2019-09-27 本文已影响0人
赤色要塞满了
这其实不难,不过从无到有仔细过一遍,也有不少细节。
安装
先去官网看看,点击download,来到了推荐企业版的页面,往下滚动,找到了Community版本的链接,这是我们想要的,点进去。
image.png就选yum安装吧。点进去,结果只有8.0版本的,可是我想要5.7的,没办法,就先下载这个吧。
image.png
免注册点击几次后,开始下载,发现是从一个repo.mysql.com二级域名下载的,点进去,这下发现了宝藏。欻欻一阵点击,找到了想要的版本,下载!
wget http://repo.mysql.com/yum/mysql-5.7-community/el/7/x86_64/mysql57-community-release-el7-10.noarch.rpm
安装源:
rpm -Uvh mysql57-community-release-el7-8^Coarch.rpm
检查源安装成功:
image.png
没问题,继续安装mysql服务:
yum install mysql-community-server
使用
启动并设置开机启动,还查看状态:
systemctl start mysqld
systemctl enable mysqld
systemctl status mysqld
查看下初始密码:
less /var/log/mysqld.log
找到这样的一句,当然也可以grep找:
[Note] A temporary password is generated for root@localhost: &i6fq/,(fneK
用来登录吧。
mysql -uroot -p
Enter password:
成功!进来后,先要改密码:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Abc1@3456';
注意强度一定要够,大小写、特殊字符、数字、8位。不然不会通过,修改完了,可以查看下密码强度要求:
image.png
可以修改密码强度和长度:
mysql> set global validate_password_policy=LOW;
mysql> set global validate_password_length=6;
然后改简单密码,比如:
mysql> update user set authentication_string=password('123456') where user='root';
或者:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Abc1@3456';
如果你忘了密码,也可以编辑/etc/my.cnf
,在最后一行加入skip-grant-tables=1
,重启服务systemctl restart mysqld
,就能免密登录。然后还是修改登录密码,但是最后还要把skip给注释掉,并且重启下服务。
想要允许远程登录:
mysql> update user set host = '%' where user = 'root';
mysql> flush privileges;
问题
有时候创建完数据库,出现类似Access denied for user 'root'@'11.22.33.44' to database 'mydb'
的错误,需要做个授权:
grant all on mydb.* to 'root'@'%' identified by 'yourpassword' with grant option;
够用了。