Mysql安装– mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar
1,下载mysql包
1.1:可以访问官网路径:https://dev.mysql.com/downloads/mysql/
1.2:也可以使用 wget下载并解压–安装前准备创建安装目录
cd /data/software
mkdir mysql
cd /data/software/mysql
wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.16-1.el7.x86_64
.rpm-bundle.tar
tar -xvf mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar
下载完成后,解压,会看到很多rpm包,其中的4个是必要的:
mysql-community-common-5.7.16-1.el6.x86_64.rpm
mysql-community-libs-5.7.16-1.el6.x86_64.rpm
mysql-community-client-5.7.16-1.el6.x86_64.rpm
mysql-community-server-5.7.16-1.el6.x86_64.rpm
2,开始安装
使用 rpm 命令按顺序依次安装 4 个包:
rpm -ivh mysql-community-common-5.7.16-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.16-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.16-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm
如果上述命令执行完,没有报错,则表示安装成功。可运行一下命令验证安装是否成功
mysqladmin –version
3,配置文件在/etc/my.cnf,可按实际需求增减配置:
[mysqld]
# 数据库默认字符集,主流字符集支持一些特殊表情符号(特殊表情符占用4个字节)
character-set-server = utf8mb4
# 数据库字符集对应一些排序等规则,注意要和character-set-server对应
collation-server = utf8mb4_general_ci
# 设置client连接mysql时的字符集,防止乱码
init_connect=’SET NAMES utf8mb4′
# 是否对sql语句大小写敏感,1表示不敏感
lower_case_table_names = 1
max_allowed_packet = 128M
4,初始化并设置密码
4.1:初始化mysql,这个主要是来创建数据文件目录和mysql系统数据库产生随机root密码。
mysqld –initialize
4.2:对/var/lib/mysql目录进行权限授权
chown -R mysql:mysql /var/lib/mysql/
4.3:启动mysql,看是否安装成功
systemctl start mysqld
# 查看下mysql进程
ps -ef | grep mysql
如下图所示,我们可以看到mysql服务已经启动:
5,获取默认随机生成的 root密码
cat /var/log/mysqld.log | grep password
6,用随机密码登录并修改密码
mysql -u root -p #回车后输入随机密码
ALTER USER ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘你的密码’;
7,设置为自启动
systemctl enable mysqld
systemctl daemon-reload
//出现如下错误//
Mysql不支持远程连接:1130-Host ‘xxx’ is not allowed to connect to this Mysql server
1,在安装Mysql数据库的服务器上登陆root用户:
mysql -u root -p
2,切换数据库,查看user表中host信息
use mysql;
select host from user where user = ‘root’;
3,将localhost修改为通配符%
host列制定了允许用户远程登录的IP,指定为通配符%,表示不限制远程访问。
注意:在生产环境下不能为了省事将host设置为%,这样做会存在安全问题,具体的设置可以根据生产环境的IP进行设置;
update user set host = ‘%’ where user = ‘root’;
4,执行flush privileges使配置生效
flush privileges;
systemctl status firewalld 发现防火墙状态 dead 就是没有打开
systemctl start firewalld 开启防火墙
firewall-cmd –zone=public –list-ports 查询linux放行的端口有哪些
firewall-cmd –zone=public –add-port=3306/tcp –permanent添加在liunx上面对应端口
firewall-cmd –reload 然后刷新命令–必须刷新
在云购买的对应服务器上面添加端口, 安全组里面添加端口