linux安装mysql(yum安装,比较简单)

时间:2021-01-11 17:35:04

1.查看是否安装了MySQL数据库

# rpm -qa | grep mysql

<--------------------------------------------
将剩余mysql目录删除干净(安装失败后尝试)

复制代码
[root@node2 mysql-5.7.26]# find / -name mysql
/etc/selinux/targeted/active/modules/100/mysql
/var/lib/mysql
/var/lib/mysql/mysql
/usr/share/mysql
--------------------------------------------->

2.卸载过程

首先需要先停止mysqld服务,否则直接卸载rpm包后,重新安装的mysql没有初始密码
[root@node2 mysql-5.7.26]# service mysqld stop
[root@node2 mysql-5.7.26]# rpm -qa|grep mysql

卸载有两种方式,一种是普通删除,另一种是强力删除,当MySQL数据库有其它的依赖文件时,也进行删除。
rpm -e mysql和rpm -e --nodeps mysql

3.安装过程

首先,我们通过命令:yum list | grep mysql来查看yum上提供的数据库可下载版本。

32位系统 选择安装 mysql.i686,mysql-devel.i686,mysql-server.i686就行了。
64位系统 选择安装 mysql.x86_64 mysql-server.x86_64 mysql-devel.x86_64

yum -y install mysql.x86_64 mysql-server.x86_64 mysql-devel.x86_64

4.启动mysql
启动方式:service mysqld start 第一次启动会初始化数据库
关闭方式:service mysqld stop

启动报错
Initializing MySQL database:
FATAL ERROR: Could not find mysqld

The following directories were searched:

/usr/local/mysql/libexec
/usr/local/mysql/sbin
/usr/local/mysql/bin

If you compiled from source, you need to run 'make install' to
copy the software into the correct location ready for operation.

If you are using a binary release, you must either be at the top
level of the extracted archive, or pass the --basedir option
pointing to that location.

                                                       [FAILED]

yum安装时警告warning: /etc/my.cnf created as /etc/my.cnf.rpmnew

由于原来的/etc/my.cnf存在,安装前应该删除

我们可以使用命令:
chkconfig --list | grep mysqld 来查看是否开机自动启动。如果2~5的都是 on 或者是启用
说明是开机自动启动,否则如果不是。我们可以通过命令
chkconfig mysqld on 来设置成开机自动启动。

5.修改root密码

进入mysql 至此mysql安装完毕
mysql

如果报错-bash: /usr/local/mysql/bin/mysql: No such file or directory
mkdir /usr/local/mysql/bin/ -p
cp /usr/bin/mysql /usr/local/mysql/bin/

退出mysql 修改密码(此时只是退出mysql,不能关掉mysql服务,否则将修改失败)

修改root密码
/usr/bin/mysqladmin -u root password 你的密码

6.远程连接设置

首先要开放 3306 端口 打开防火墙文件

vim /etc/sysconfig/iptables

开放3306端口

-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
重启iptables服务
service iptables restart;

进入mysql,授权远程连接
GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘root’ WITH GRANT OPTION;
FLUSH PRIVILEGES;

GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
刷新权限

flush privileges;

mysql>use mysql;

mysql>update user set host = '%' where user = 'root';

mysql>select host, user from user;

如果本地能连接上,远程无法连接,查看root密码与本地密码是否一致