说明:本教程是CenOS安装MySQL服务。
0. 预备知识:
什么是rpm
RMP 是 LINUX 下的一种软件的可执行程序,你只要安装它就可以了。这种软件安装包通常是一个RPM包(Redhat Linux Packet Manager,就是Redhat的包管理器),后缀是.rpm。
RPM是Red Hat公司随Redhat Linux推出了一个软件包管理器,通过它能够更加轻松容易地实现软件的安装。
1.安装软件:执行rpm -ivh rpm包名,如:
#rpm -ivh apache-1.3.6.i386.rpm
##其中i表示安装,v表示显示安装过程,h表示显示进度
2.升级软件:执行rpm -Uvh rpm包名。 ##U是升级
3.反安装:执行rpm -e rpm包名。 ##是指删除、卸载软件
什么是flush privileges
flush privileges 命令本质上的作用是将当前user和privilige表中的用户信息/权限设置从mysql库(MySQL数据库的内置库)中提取到内存里。MySQL用户数据和权限有修改后,希望在"不重启MySQL服务"的情况下直接生效,那么就需要执行这个命令。通常是在修改ROOT帐号的设置后,怕重启后无法再登录进来,那么直接flush之后就可以看权限设置是否生效。而不必冒太大风险。
安装步骤:
1:检查是否安装老版本的MySQL和mariadb
[root@master ~]# rpm -qa|grep mariadb
mariadb-libs-5.5.56-2.el7.x86_64
如果存在 maridb 包,就先卸载,卸载命令如下所示。
[root@master ~]# rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
[root@master ~]#
2. 使用 Xftp 上传四个 MySql 相关包至 /opt 目录
3. 安装依赖包(注意:需要电脑联网)
mysql 安装需要依赖 perl 组件,使用yum 命令安装:
[root@master ~]# yum install perl ##按照提示,输入y,直到显示完毕
[root@master ~]# yum install net-tools
4. 安装SQL 软件,命令如下所示:
[root@master opt]# rpm -ivh /opt/mysql-community-common-5.7.13-1.el6.x86_64.rpm
[root@master opt]# rpm -ivh /opt/mysql-community-libs-5.7.13-1.el6.x86_64.rpm
[root@master opt]# rpm -ivh /opt/mysql-community-client-5.7.13-1.el6.x86_64.rpm
[root@master opt]# rpm -ivh /opt/mysql-community-server-5.7.13-1.el6.x86_64.rpm
[root@master opt]# rpm -ivh /opt/mysql-community-server-5.7.13-1.el6.x86_64.rpm
5. 安装完成后开启 MySQL 服务
命令如下所示,安装启动服务成功如图所示:
[root@master opt]# service mysqld start
Starting mysqld (via systemctl): [ 确定 ]
[root@master opt]#
6. 查看临时密码,命令如下所示:
[root@master opt]# grep 'temporary password' /var/log/mysqld.log
2019-11-18T04:44:10.976224Z 1 [Note] A temporary password is generated for root@localhost: =kfp-T:qM3eU ##=kfp-T:qM3eU是临时密码
[root@master opt]#
7.登入 MySQL
命令如下所示,显示登录成功。
[root@master opt]# mysql -u root -p
Enter password: ##密码可以直接粘贴=kfp-T:qM3eU
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5
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>
8. 修改密码为“bigData@123”
mysql> alter user 'root'@'localhost' identified by 'bigData@123';
Query OK, 0 rows affected (0.00 sec)
mysql>
9.授权 root 登入
mysql> grant all privileges on *.* to 'root'@'%' identified by 'bigData@123';
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql>
10.立即生效,不用重启mysql服务
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql>exit ##退出mysql
11. 配置开启系统自启动 mysql 服务
# 编辑 rc.local 文件,添加如下内容:
mkdir -p /var/run/mysqld
chown mysql.mysql /var/run/mysqld/
[root@master etc]# vi /etc/rc.local
[root@master etc]# chmod 774 /etc/rc.d/rc.local
[root@master etc]#
#添加文件权限
chmod 774 /etc/rc.d/rc.local
12.修改服务端字符编码,解决中文乱码问题
mysql> show variables like 'chara%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.01 sec)
mysql>
复制模板文件
[root@master etc]# cp /usr/share/mysql/my-default.cnf /etc/my.cnf
[root@master etc]# vi my.cnf
##黄色部分是添加的内容,注意第一部分、第二部分分别在[mysqld]的前面和后面添加。
第一部分:
[client]
default-character-set=utf8
[mysqld]
第二部分:
default-storage-engine=INNODB
character-set-server=utf8
collation-server=utf8_general_ci
重启mysql服务,再登录查看字符集
[root@master etc]# service mysqld restart
Restarting mysqld (via systemctl): [ 确定 ]
[root@master etc]# mysql -u root -p
字符集结果
mysql> show variables like 'chara%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
mysql>
13.Navicat Premium连接Mysql服务
输入服务器地址192.168.56.110
输入用户名:root
输入密码:bigData@123
如下图:点击连接测试,弹出连接成功框。
点击连接,然后可以点击名称虚拟机,就可以创建数据库、创建表等。
完毕!