CentOS7安装mysql5.7.19的手顺,步骤(非常详细)

CentOS7安装mysql5.7.19手顺

1.首先确认系统是否已经安装了mysql或者mariaDB
rpm -qa | grep mysql
rpm -qa | grep mariaDB

2.如果有相关安装包,则立即卸载
rpm -e --nodeps 安装包名称
如:rpm -e --nodeps mysql-community-client-5.1.18-1.el7.i686
注意:一定要将mariaDB包和自带mysql包卸载干净,否则安装时出现各种奇妙错误,导致失败。

3.去官网https://dev.mysql.com/downloads/mysql/下载相应版本的mysql。
我的CentOS7是32位的,所以选择了Red Hat Enterprise Linux 7 / Oracle Linux 7 (x86,32-bit)。
最小安装下载四个文件即可:
mysql-community-common-5.7.19-1.el7.i686.rpm
mysql-community-libs-5.7.19-1.el7.i686.rpm
mysql-community-client-5.7.19-1.el7.i686.rpm
mysql-community-server-5.7.19-1.el7.i686.rpm

4.安装顺序:
rpm -ivh mysql-community-common-5.7.19-1.el7.i686.rpm
rpm -ivh mysql-community-libs-5.7.19-1.el7.i686.rpm
rpm -ivh mysql-community-client-5.7.19-1.el7.i686.rpm
rpm -ivh mysql-community-server-5.7.19-1.el7.i686.rpm
注意:common先装,libs依赖common,client依赖libs,server依赖common和client。

5.检查安装目录
执行whereis mysql出现下面的信息说明已经安装成功了。
mysql: /usr/bin/mysql /usr/lib/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz

6.检查mysql配置文件
vi /etc/my.cnf
主要内容如下,一般什么都不需要更改,默认值即可。
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

7.检查目录权限:
一定确保datadir设置的路径的所有组和所有者是mysql,如果不是则运行下面命令更改,如果不改则初始化会失败。
chown mysql:mysql -R /var/lib/mysql

8.关闭服务:
如果mysql服务打开,则将其关闭
service mysqld stop

9.这里是重点:一定要执行初始化!
mysqld --initialize -insecure --user=mysql
注意:这里一定要加上-insecure,这样mysql会创建一个没有密码的root账户,否则会创建有密码的,密码会写在/var/log/mysqld.log里面。

10.开启服务:
service mysqld start

11.登录账户:
如果创建了没有密码的root账户,则直接mysql回车,就会进入mysql了。
否则mysql -u root -p,输入密码。

至此,mysql的root账户可以登录本地的mysql了,但是默认不支持远程登录,以下是如何让root账户远程登录的流程:

12.使用数据库mysql
use mysql;

13.查询root账户信息
select * from user \G;
这样会看到root账户没有密码,那么我们给它加个密码,没有密码的root账户是不允许远程登录的。

14.修改root账户的密码:
update user set aurhentication_string=PASSWORD('your password') where user='root';
注意:新版的mysql 5.7.15后需要上面的改法,因为字段变更为aurhentication_string了,网上烂大街那个不能用。

15.commit权限更改:
一定执行下面的语句,否则修改密码不生效。
flush privileges;

16.确认密码修改成功:
exit; 退出mysql
然后
mysql -u root -p
输入密码

17.登录成功后给root账户授权远程登录
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your password' WITH GRANT OPTION;
flush privileges;
注意:%表示任何机器都可远程mysql,如果把%变成某个ip,就是指定某个机器才可以远程登录。

18.尝试远程登录:
找个客户端,输入相关信息
主机名或ip:******
端口:3306
用户名:root
密码:your password

Centos7安装mysql5.7 rpm安装 卸载MariaDB CentOS7默认安装MariaDB而不是MySQL,而且yum服务器上也移除了MySQL相关的软件包。因为MariaDB和MySQL可能会冲突,故先卸载MariaDB。 1、安装新版mysql之前,我们需要将系统自带的mariadb-lib卸载 [root@iZwz94qazh62gk5ewl4ei2Z home]# rpm -qa | grep -i mariadb mariadb-libs-5.5.52-1.el7.x86_64 [root@iZwz94qazh62gk5ewl4ei2Z home]# rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64 如果系统之前有安装mysql,要先查看有没有安装: rpm -qa | grep -i mysql 如果有安装要先进行删除,避免安装冲突; yum -y remove mysql-libs-5.1.73-7.el6.x86_64 2、到mysql的官网下载最新版mysql的rpm集合包:mysql-5.7.19-1.el6.x86_64.rpm-bundle.tar 3、上传mysql-5.7.18-1.el6.x86_64.rpm-bundle.tar到linux服务器,并解压tar包 复制代码 [root@iZwz94qazh62gk5ewl4ei2Z home]# mkdir mysql [root@iZwz94qazh62gk5ewl4ei2Z home]# tar -xf mysql-5.7.19-1.el6.x86_64.rpm-bundle.tar -C mysql [root@iZwz94qazh62gk5ewl4ei2Z home]# cd mysql [root@iZwz94qazh62gk5ewl4ei2Z mysql]# ll total 459492 -rw-r--r-- 171553141523618836 Mar 2017:40 mysql-community-client-5.7.19-1.el6.x86_64.rpm -rw-r--r-- 1715531415335496 Mar 2017:40 mysql-community-common-5.7.19-1.el6.x86_64.rpm -rw-r--r-- 17155314153747352 Mar 2017:40 mysql-community-devel-5.7.19-1.el6.x86_64.rpm -rw-r--r-- 171553141539086508 Mar 2017:40 mysql-community-embedded-5.7.19-1.el6.x86_64.rpm -rw-r--r-- 1715531415135869292 Mar 2017:40 mysql-community-embedded-devel-5.7.19-1.el6.x86_64.rpm -rw-r--r-- 17155314152177064 Mar 2017:40 mysql-community-libs-5.7.19-1.el6.x86_64.rpm -rw-r--r-- 17155314151723180 Mar 2017:40 mysql-community-libs-compat-5.7.19-1.el6.x86_64.rpm -rw-r--r-- 1715531415159060212 Mar 2017:41 mysql-community-server-5.7.19-1.el6.x86_64.rpm -rw-r--r-- 1715531415104881084 Mar 2017:41 mysql-community-test-5.7.19-1.el6.x86_64.rpm 复制代码 4、使用rpm -ivh命令进行安装 复制代码 [root@iZwz94qazh62gk5ewl4ei2Z mysql]# rpm -ivh mysql-community-common-5.7.19-1.el6.x86_64.rpm warning: mysql-community-common-5.7.18-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY Preparing... ################################# [100%] Updating / installing... 1:mysql-community-common-5.7.18-1.e################################# [100%] [root@iZwz94qazh62gk5ewl4ei2Z mysql]# rpm -ivh mysql-community-libs-5.7.19-1.el6.x86_64.rpm warning: mysql-community-libs-5.7.18-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY Preparing... ################################# [100%] Updating / installing... 1:mysql-community-libs-5.7.18-1.el6################################# [100%] [root@iZwz94qazh62gk5ewl4ei2Z mysql]# rpm -ivh mysql-community-client-5.7.19-1.el6.x86_64.rpm warning: mysql-community-client-5.7.18-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY Preparing... ################################# [100%] Updating / installing... 1:mysql-community-client-5.7.18-1.e################################# [100%] [root@iZwz94qazh62gk5ewl4ei2Z mysql]# rpm -ivh mysql-community-server-5.7.19-1.el6.x86_64.rpm warning: mysql-community-server-5.7.18-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY Preparing... ################################# [100%] Updating / installing... 1:mysql-community-server-5.7.18-1.e################################# [100%] [root@iZwz94qazh62gk5ewl4ei2Z mysql]# 复制代码 上面几个包有依赖关系,执行有先后。 使用rpm安装方式安装mysql安装的路径如下:(系统自动配置好了,不需要动配置) a 数据库目录 /var/lib/mysql/ b 配置文件 /usr/share/mysql(mysql.server命令及配置文件) c 相关命令 /usr/bin(mysqladmin mysqldump等命令) d 启动脚本 /etc/rc.d/init.d/(启动脚本文件mysql的目录) e /etc/my.conf 5、 数据库初始化 为了保证数据库目录为与文件的所有者为 mysql 登陆用户,如果你的linux系统是以 root 身份运行 mysql 服务,需要执行下面的命令初始化 [root@iZwz94qazh62gk5ewl4ei2Z mysql]# mysqld --initialize --user=mysql 如果是以 mysql 身份登录运行,则可以去掉 --user 选项。 另外 --initialize 选项默认以“安全”模式来初始化,则会为 root 用户生成一个密码并将该密码标记为过期,登陆后你需要设置一个新的密码, 而使用 --initialize-insecure 命令则不使用安全模式,则不会为 root 用户生成一个密码。 这里演示使用的 --initialize 初始化的,会生成一个 root 账户密码,密码在log文件里,红色区域的就是自动生成的密码 复制代码 [root@iZwz94qazh62gk5ewl4ei2Z mysql]# cat /var/log/mysqld.log 2017-06-05T14:30:52.709474Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2017-06-05T14:30:55.590590Z 0 [Warning] InnoDB: New log files created, LSN=457902017-06-05T14:30:56.000269Z 0 [Warning] InnoDB: Creating foreign key constraint system tables. 2017-06-05T14:30:56.109868Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 960c533e-49fb-11e7-91f2-00163e089fd2. 2017-06-05T14:30:56.116186Z 0 [Warning] Gtid table isnot ready to be used. Table 'mysql.gtid_executed' cannot be opened. 2017-06-05T14:30:56.116777Z 1 [Note] A temporary password is generated for root@localhost: :Wu?2QQutQwj 复制代码 现在启动mysql数据库 [root@iZwz94qazh62gk5ewl4ei2Z mysql]# service mysqld start 可以使用下面两个命令对mysql进行停止,启动和重启: 启动: 使用 service 启动:service mysqld start 使用 mysqld 脚本启动:/etc/inint.d/mysqld start 使用 safe_mysqld 启动:safe_mysqld& 停止: 使用 service 启动:service mysqld stop 使用 mysqld 脚本启动:/etc/inint.d/mysqld stop mysqladmin shutdown 重启: 使用 service 启动:service mysqld restart 使用 mysqld 脚本启动:/etc/inint.d/mysqld restart 连接数据库 [root@iZwz94qazh62gk5ewl4ei2Z mysql]# mysql -u root -p Enter password: 密码输入: :Wu?2QQutQwj 修改密码: set password = password('你的密码'); 设置远程访问 grant all privileges on *.* to 'root' @'%' identified by '123456'; flush privileges; 设置mysql开机启动 复制代码 加入到系统服务: chkconfig --add mysqld 自动启动: chkconfig mysqld on 查询列表: chkconfig
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值