持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第8天,点击查看活动详情
前言:
MySQL的安装方式有很多种,可以直接解压安装包进行相关配置,也可以选择在线安装。
下面介绍通过解包的方式来安装tar包
## 1. 首先,查询linux下是否有残缺的MySQL,如数据库mariadb是否安装(MariaDB数据库管理系统是MySQL的一个分
支)
[root@node01 ~]# rpm -qa | grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
// 如果有,则用下面的命令卸载
[root@node01 ~]# rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
## 2. 安装 net-tools 网络工具,否则会出现缺少依赖的错误
[root@node01 ~]# yum -y install net-tools
## 3.安装 perl(增强的shell),否则会出现缺少依赖的错误
[root@node01 ~]# yum -y install perl
## 4.上传tar文件
// 将windows的mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar文件上传到node01节点/opt/apps目录下,将查看是
否上传成功
[root@node01 ~]# cd /opt/apps
[root@node01 apps]# ls
## 5.在/opt/apps目录下创建MySQL目录
[root@node01 apps]# mkdir MySQL
## 6.解包
// 注意:tar包是用参数-xvf来表示解包,用参数-cvf表示打包,解包后的内容放MySQL目录中
[root@node01 apps]# tar -xvf mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar -C MySQL
// 在MySQL目录下会看到多个释放出的rpm文件
[root@node01 apps]# ls ./MySQL
mysql-community-client-5.7.33-1.el7.x86_64.rpm
mysql-community-common-5.7.35-1.el7.x86_64.rpm
mysql-community-devel-5.7.35-1.el7.x86_64.rpm
mysql-community-embedded-5.7.35-1.el7.x86_64.rpm
mysql-community-embedded-compat-5.7.35-1.el7.x86_64.rpm
mysql-community-embedded-devel-5.7.35-1.el7.x86_64.rpm
mysql-community-libs-5.7.35-1.el7.x86_64.rpm
mysql-community-libs-compat-5.7.35-1.el7.x86_64.rpm
mysql-community-server-5.7.35-1.el7.x86_64.rpm
mysql-community-test-5.7.35-1.el7.x86_64.rpm
##7. 开始安装:注意安装顺序:mysql-community-common,mysql-community-libs,mysqlcommunity-libs-
compat,mysql-community-client,mysql-community-server
[root@node01 apps]# cd ./MySQL
[root@node03 MySQL]# rpm -ivh mysql-community-common-5.7.35-1.el7.x86_64.rpm
[root@node03 MySQL]# rpm -ivh mysql-community-libs-5.7.35-1.el7.x86_64.rpm
[root@node03 MySQL]# rpm -ivh mysql-community-libs-compat-5.7.35-1.el7.x86_64.rpm
[root@node03 MySQL]# rpm -ivh mysql-community-client-5.7.35-1.el7.x86_64.rpm
[root@node03 MySQL]# rpm -ivh mysql-community-server-5.7.35-1.el7.x86_64.rpm
## 8. 清理安装包,因为这些安装包已经安装过了,所以不需要了,释放空间。
[root@node01 MySQL]# cd ..
[root@node01 apps]# rm -rf MySQL
[root@node01 apps]# rm -rf mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar
[root@node01 apps]# ls
到此为至,MySQL已安装完成。
附:安装mysql后,可以用whereis命令查看可执行文件mysql放在哪些地方、哪些文件夹里。
[root@node03 ~]# whereis mysql
mysql: /usr/bin/mysql /usr/lib64/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz
查看给定命令的绝对路径
[root@node01 apps]# which mysql
/usr/bin/mysql
在根目录下查找名称为mysql的文件
[root@node01 apps]# find / -name mysql
/etc/logrotate.d/mysql
/var/lib/mysql
/usr/bin/mysql
/usr/lib64/mysql
/usr/share/mysql
启用MySQL服务
- 启动 MySQL 服务
[root@node03 apps]# systemctl start mysqld
- 查看 MySQL 服务运行状态
[root@node03 apps]# systemctl status mysqld
3. 设置开机自动启动
[root@node03 apps]# systemctl enable mysqld
修改root用户密码
- 在日志文件中查看mysql的root用户默认密码
// 如下,默认密码为root@localhost:后面的内容,即:rBx2kgawSe=g
[root@node01 apps]# grep 'temporary password' /var/log/mysqld.log
2022-07-17T03:58:13.780119Z 1 [Note] A temporary password is generated for root@localhost:
hko%:bz+R3ul
- 取消密码策略检查
//修改/etc/my.cnf文件,在文件中添加validate_password=off以禁用密码策略
[root@node01 apps]# vim /etc/my.cnf
## 在最后一行添加以下内容
validate_password=off
- 重新启动mysql服务
[root@node01 apps]# systemctl restart mysqld
- 进入mysql,并输入第一步中获取的密码hko%:bz+R3ul,这个密码不好记,启动mysql后用ALTER USER命令修改root用户密码。
[root@node01 apps]# mysql -uroot -p'hko%:bz+R3ul'
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '111111';
Query OK, 0 rows affected (0.00 sec)
5.退出mysql,用新密码重新登录mysql,测试密码修改是否成功
mysql> exit
添加root用户的远程登录权限
默认只允许 root 用户在本地登录,如果要在其它机器上连接 MySQL,必须修改 root 允许远程连接,或者添加一
个允许远程连接的账户 。(下面的操作在配置Hive的时候需要,所以现在也做一下)
- 进入mysql
[root@node01 apps]# mysql -uroot -p111111
- 修改root的远程访问权限
// root代表用户名, %代表任何主机都可以访问, 123456为root访问的密码
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '111111' WITH GRANT OPTION;
- flush privileges 刷新MySQL的系统权限,使其即时生效,否则就重启服务器
mysql> FLUSH PRIVILEGES;
- 退出
mysql> exit;