centos 安装mysql

1. centos彻底卸载mysql(不保留数据)

1、 rpm -qa | grep -i mysql

查找已经安装的mysql.
MySQL-server-5.6.43-1.el7.x86_64
MySQL-client-5.6.43-1.el7.x86_64
MySQL-devel-5.6.43-1.el7.x86_64
以上三个就是我安装的mysql.

2、 yum -y remove MySQL-*

命令删除mysql

3、 find / -name mysql

查找mysql的一些目录,把所有出现的目录统统删除.可以使用rm -rf 路径,删除时请注意,一旦删除无法恢复。
4、rm -rf /etc/my.cnf

这个是删除配置文件

5、 rm -rf /root/.mysql_sercret

删除mysql的默认密码,如果不删除,以后安装mysql这个sercret中的默认密码不会变,使用其中的默认密码就可能会报类似Access denied for user 'root@localhost' (using password:yes)的错误.

五步完成之后,这样mysql就全部删除干净了.

2. 安装

下载安装包,注意:版本号要统一,66
https://downloads.mysql.com/archives/community/

wget https://cdn.mysql.com/archives/mysql-5.7/mysql-community-server-5.7.29-1.el7.x86_64.rpm
wget https://cdn.mysql.com/archives/mysql-5.7/mysql-community-client-5.7.29-1.el7.x86_64.rpm
wget https://cdn.mysql.com/archives/mysql-5.7/mysql-community-libs-5.7.29-1.el7.x86_64.rpm
wget https://cdn.mysql.com/archives/mysql-5.7/mysql-community-common-5.7.29-1.el7.x86_64.rpm

依次下载并按照顺序安装
1)rpm -ivh mysql-community-common-5.7.29-1.el7.x86_64.rpm
2)rpm -ivh mysql-community-libs-5.7.29-1.el7.x86_64.rpm
3)rpm -ivh mysql-community-client-5.7.29-1.el7.x86_64.rpm


yum install perl 
yum install numactl
安装server之前安装如上两个依赖,否则会有如下错误提示server安装不成功

4)rpm -ivh mysql-community-server-5.7.29-1.el7.x86_64.rpm --nodeps --force

** 注意,如果安装报错:**
error: Failed dependencies: mysql-community-libs(x86-64) >= 5.7.9 is needed by mysql-community-clie
解决办法:
在指令后面加上: --nodeps --force

rpm -ivh mysql-community-client-5.7.29-1.el7.x86_64.rpm --nodeps --force

  1. rpm 安装后 mysql 默认安装目录等信息
    数据库文件默认在:cd /usr/share/mysql
    配置文件默认在:/etc/my.cnf

     数据库目录:/var/lib/mysql/
     配置文件:/usr/share/mysql(mysql.server命令及配置文件)
     相关命令:/usr/bin(mysqladmin、mysqldump等命令)(*mysql的一种安全启动方式:/usr/bin/mysqld_safe –user=root &)
     启动脚本:/etc/rc.d/init.d/  (启动脚本文件mysql的目录)
     /usr/bin(mysqladmin mysqldump等命令)
    
     rpm安装默认目录:
     数据文件:/var/lib/mysql/
     配置文件模板:/usr/share/mysql
     mysql客户端工具目录:/usr/bin
     日志目录:/var/log/
     pid,sock文件目录:/tmp/
    

第一次启动会出现初始化失败,所以要进入第5步,如果启动正常,可以忽略5、6步

5.清空数据目录 rm -rf /var/lib/mysql/*
6.初始化:mysqld --initialize --user=mysql



报错的话,使用命令:yum install -y libaio (亲测可以)
也有人说可以使用 yum install -y libaio.so.1 才能成功
7.启动:service mysqld start
Starting mysqld: [ OK ]
但是启动命令没反应对如下:



service mysql start 是重定向到/bin/systemctl restart mysql.service. mysql与mysqld是不同的,前者交互式命令(客户端),mysqld才是后端服务进程,可能是启错了
还有说是新版的问题,不清楚

解决方法:

systemctl start mysqld

查看 MySQL 运行状态:

systemctl status mysqld

重启MySQL

systemctl restart mysqld

8.第一次登录前看root的密码

grep 'temporary password' /var/log/mysqld.log

2020-03-28T10:16:17.872230Z 1 [Note] A temporary password is generated for root@localhost: vpGw6:T4ni

9.登录:使用上面红色字体的随机密码(每个人的不一样)登录

mysql -u root -p
Enter password: 在此输入上面的密码(每个人的不一样哦)

进入mysql了:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.29
Copyright (c) 2000, 2020, 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.
10:登录后改密码 老版本的
修改密码并允许其他机器上客户端登录
mysql> alter user 'root'@'localhost' identified by 'root'
grant all privileges on . to 'root'@'%' identified by 'root' with grant option

11.开放防火墙的3306端口

vi /etc/sysconfig/iptables
加入下面这行

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
在这里添加端口
centos7启动iptables时报Job for iptables.service failed because the control process exited with error cod
12.重新启动防火墙 service iptables restart
mysql.5.7.29
重启mysql 服务,两种那个都行:

/etc/init.d/mysqld restart
service mysqld restart  如果失败使用以下操作
systemctl restart mysqld.service

修改用户密码:


SET PASSWORD = PASSWORD('123456yu');
flush privileges;
update user set authentication_string = password('x**o*u123456'), password_expired d = 'N', password_last_changed = now() where user = 'root'

修改mysql5.7的root用户密码
其实想要重置 5.7 的密码很简单,就一层窗户纸:

1、修改 /etc/my.cnf,在 [mysqld] 小节下添加一行:skip-grant-tables=1

这一行配置让 mysqld 启动时不对密码进行验证

2、重启 mysqld 服务:service mysqld restart

3、使用 root 用户登录到 mysql:mysql -u root

4、切换到mysql数据库,更新 user 表:

use mysql
update user set authentication_string = password('123456'), password_expired = 'N', password_last_changed = now() where user = 'root';

在之前的版本中,密码字段的字段名是 password,5.7版本改为了 authentication_string

5、退出 mysql,编辑 /etc/my.cnf 文件,删除 skip-grant-tables=1 的内容

6、flush privileges;

7、重启 mysqld 服务,再用新密码登录即可

另外,MySQL 5.7 在初始安装后(CentOS7 操作系统)会生成随机初始密码,并在 /var/log/mysqld.log 中有记录,可以通过 cat 命令查看,找 password 关键字

找到密码后,在本机以初始密码登录,并且(也只能)通过 alter user 'root'@'localhost' identified by 'root' 命令,修改 root 用户的密码为 root,然后退出,重新以root用户和刚设置的密码进行登录即可。

INSERT INTO runoob_tbl (runoob_title, runoob_author, submission_date) VALUES("学习 PHP", "菜鸟教程", NOW());

INSERT INTO runoob_tbl (runoob_title, runoob_author, submission_date) VALUES ("学习 MySQL", "菜鸟教程", NOW());

INSERT INTO runoob_tbl (runoob_title, runoob_author, submission_date) VALUES ("JAVA 教程", "RUNOOB.COM", '2016-05-06');

centos6.7安装mysql5.79 及修改mysql初始密码
Linux怎么查看软件安装路径 查看mysql安装在哪
redhat
关于Linux安装mysql默认配置文件位置
Ubuntu安装MySQL5.7并配置数据存储路径的方法步骤
RPM方式安装MySQL并修改存储位置
linux安装和配置mysql5.7.29
RedHat7安装MySQL5.7.11
centos7安装mysql5.7.29

你可能感兴趣的:(centos 安装mysql)