这篇文章主要为大家详细介绍了 CentOS 7 下使用 RPM 安装 mysql5.7.13 的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
MySQL 是一个开放源码的小型关联式数据库管理系统,开发者为瑞典 MySQL AB 公司。MySQL 被广泛地应用在 Internet 上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库。
0、环境
本文操作系统: CentOS 7.2.1511 x86_64
MySQL 版本: 5.7.13
1、卸载系统自带的 mariadb-lib
- [root@centos-linux ~]# rpm -qa|grep mariadb
- mariadb-libs-5.5.44-2.el7.centos.x86_64
- [root@centos-linux ~]# rpm -e mariadb-libs-5.5.44-2.el7.centos.x86_64 --nodeps
2、下载 rpm 安装包
去官网找到最新的 rpm 集合包。现在最新的是 mysql-5.7.13-1.el7.x86_64.rpm-bundle.tar
复制其下载地址,在服务器下载 (或者本地下载了上传至服务器)。
- [root@centos - linux~]#wget http: //dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.13-1.el7.x86_64.rpm-bundle.tar
然后解压
- [root@centos-linux ~]# ls
- mysql-5.7.13-1.el7.x86_64.rpm-bundle.tar
- [root@centos-linux ~]# tar xvf mysql-5.7.13-1.el7.x86_64.rpm-bundle.tar
- mysql-community-test-5.7.13-1.el7.x86_64.rpm
- mysql-community-embedded-5.7.13-1.el7.x86_64.rpm
- mysql-community-embedded-compat-5.7.13-1.el7.x86_64.rpm
- mysql-community-server-5.7.13-1.el7.x86_64.rpm
- mysql-community-client-5.7.13-1.el7.x86_64.rpm
- mysql-community-common-5.7.13-1.el7.x86_64.rpm
- mysql-community-server-minimal-5.7.13-1.el7.x86_64.rpm
- mysql-community-embedded-devel-5.7.13-1.el7.x86_64.rpm
- mysql-community-devel-5.7.13-1.el7.x86_64.rpm
- mysql-community-libs-compat-5.7.13-1.el7.x86_64.rpm
- mysql-community-libs-5.7.13-1.el7.x86_64.rpm
- mysql-community-minimal-debuginfo-5.7.13-1.el7.x86_64.rpm
3、安装
依次执行(几个包有依赖关系,所以执行有先后)下面命令安装
- [root@centos-linux ~]# rpm -ivh mysql-community-common-5.7.13-1.el7.x86_64.rpm
- [root@centos-linux ~]# rpm -ivh mysql-community-libs-5.7.13-1.el7.x86_64.rpm
- [root@centos-linux ~]# rpm -ivh mysql-community-client-5.7.13-1.el7.x86_64.rpm
- [root@centos-linux ~]# rpm -ivh mysql-community-server-5.7.13-1.el7.x86_64.rpm
4、数据库初始化
在 *nix 系统中,为了保证数据库目录为与文件的所有者为 mysql 登陆用户,如果你是以 root 身份运行 mysql 服务,需要执行下面的命令初始化
mysqld --initialize --user=mysql
如果是以 mysql 身份运行,则可以去掉 --user 选项。
另外 --initialize 选项默认以 "安全" 模式来初始化,则会为 root 用户生成一个密码并将该密码标记为过期,登陆后你需要设置一个新的密码,而使用 --initialize-insecure 命令则不使用安全模式,则不会为 root 用户生成一个密码。
这里演示使用的 --initialize 初始化的,会生成一个 root 账户密码,密码在 log 文件里
上图里的最后一行则给出了生成的密码,现在就可以启动数据库了,然后使用上面的密码登陆。
- [root@centos-linux ~]# systemctl start mysqld
- [root@centos-linux ~]# mysql -uroot -p
- Enter password:
- Welcome to the MySQL monitor. Commands end with ; or \g.
- Your MySQL connection id is 2
- Server version: 5.7.13
- Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
- Oracle is a registered trademark of Oracle Corporation and/or its
- affiliates. Other names may be trademarks of their respective
- owners.
- Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
- mysql>
5、修改 root 密码
该密码被标记为过期了,如果想正常使用还需要修改密码
- mysql> show databases;
- ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
以前的 password() 函数将会被抛弃,官方建议使用下面的命令来修改密码
- mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
同时,如果你设置的密码过于简单也会报错。
- mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123';
- ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
具体关于设置密码的规则,可以看这一篇 {aa0aa}。
这里我们注意设置密码 长度要大于 8,同时要有数字,大小写,特殊字符。
来源: http://www.phperz.com/article/17/0317/320100.html