CentOS是Linux发行版的一员,其他的Linux发行版,也可酌情参考本文!
第一步:下载mysql5.7的rpm安装包rpm的mysql安装包安装起来简单,解压版的mysql需要手动配置,稍有不慎就会出错!
下载地址:https://dev.mysql.com/downloads/mysql/
点击右侧的Download会弹出需要登录的页面:
下载完成后,安装包是这个样子的:
第二步:上传mysql安装包到Centos7的下
我使用的是Xftp上传到Centos7的opt目录下:
第三步:检查是否已经安装了mysql或者mariadb(centos7默认安装),如已安装,需要先卸载。
使用rpm -e --nodeps命令卸载mariadb:
注意:如果是centos6,默认安装的是mysql,那么需要卸载的就是mysql。
第四步:安装mysql5.7需要的依赖[root@localhost opt]# yum install libaio
[root@localhost opt]# yum install net-tools
安装依赖时会询问你是下载并安装还是下载或者不下载。(输入y回车,下载并安装即可。)
由于mysql安装过程中,会通过mysql用户在/tmp目录下新建tmp_db文件,所以请给/tmp较大的权限执行 :chmod -R 777 tmp
第五步:安装mysql5.7
在mysql的安装文件目录下执行:(必须按照顺序执行)[root@localhost opt]# rpm -ivh mysql-community-common-5.7.32-1.el7.x86_64.rpm
[root@localhost opt]# rpm -ivh mysql-community-libs-5.7.32-1.el7.x86_64.rpm
[root@localhost opt]# rpm -ivh mysql-community-client-5.7.32-1.el7.x86_64.rpm
[root@localhost opt]# rpm -ivh mysql-community-server-5.7.32-1.el7.x86_64.rpm
如果系统中没有安装mysql5.7需要的依赖,在安装的时候会报错。
查看mysql安装的版本:[root@localhost opt]# mysqladmin --version
出现如下版本信息,表示安装成功:
mysql服务的初始化:
为了保证数据库目录为与文件的所有者为 mysql 登陆用户,如果你是以 root 身份运行 mysql 服务,需要执行下面的命令初始化[root@localhost opt]# mysqld --initialize --user=mysql
--initialize 选项默认以“安全”模式来初始化,则会为 root 用户生成一个密码并将该密码标记为过期,登陆后你需要设置一个新的密码
查看密码:[root@localhost opt]# cat var/log/mysqld.log
# root@localhost: 后面就是初始化的密码
第六步:mysql服务的启动和停止启动:
[root@localhost opt]# systemctl start mysqld.service
或者
[root@localhost opt]# service mysqld start
停止:
[root@localhost opt]# systemctl stop mysqld.service
或者
[root@localhost opt]# service mysqld stop
查看进程:
[root@localhost opt]# ps -ef | grep mysqld
第七步:首次登陆
首次登陆通过 mysql -uroot -p进行登录,在Enter password后面,输入初始化密码,最好直接复制,不然容易出错:
注意:要保证自己的mysql服务是开启的状态
因为初始化密码默认是过期的,所以查看数据库会报错
修改密码:# new_password替换成自己的密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
设置完密码就可以使用新密码登陆,正常使用数据库了。
开启远程连接,允许远程连接数据库:mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
默认是没有开放3306端口的,这里需要手动开启或者关闭防火墙:# 开启3306端口
## zone -- 作用域
## add-port=80/tcp -- 添加端口,格式为:端口/通讯协议
## permanent -- 永久生效,没有此参数重启后失效
[root@localhost etc]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 关闭防火墙 (生产环境不推荐)
[root@localhost etc]# systemctl stop firewalld.service #或者
[root@localhost etc]# systemctl disable firewalld.service
# 开启3306端口后,需要重启防火墙
[root@localhost etc]# firewall-cmd --reload
## 开启3306端口后,远程连接工具就能连接到MySQL数据库了
修改字符集问题:[root@localhost etc]# vim etc/my.cnf
修改完配置文件,需要重新启动mysql服务。
如果是已经生成的库或表,字符集更改如下:# 修改数据库的字符集
mysql> alter database mydb character set 'utf8';
# 修改数据表的字符集
mysql> alter table mytbl convert to character set 'utf8';
至此,mysql5.7的安装以及大致的配置已经完成。