MySQL入门——在Linux下安装和卸载MySQL
摘要:本文主要学习了如何在Linux系统中安装和卸载MySQL数据库。
查看有没有安装过MySQL
使用命令查看有没有安装过:
1 [root@localhost ~]# yum list installed | grep mysql
2 [root@localhost ~]#
从CentOS版本6开始,官方版本的yum源中用MariaDB替换了MySQL,新的Linux系统中将不会默认安装MySQL,安装MySQL一般需要去官网下载rpm包或者源码包等方式。
安装MySQL源码包
查看yum可用的软件包
因为如果没有源码包,yum的仓库里是没有MySQL的安装包的,使用命令查看yum仓库里有关MySQL的软件包:
1 [root@localhost ~]# yum repolist all | grep mysql
2 [root@localhost ~]#
找到源码包下载链接
MySQL的官网地址如下:
登录官网如图:
将页面滑动到下面,点击Red Hat Enterprise Linux 7对应的Download下载按钮:
在新的页面找到下方的地址链接,右键复制链接地址:
下载源码包
在Linux系统中使用wget命令下载rpm包,地址即为刚刚在MySQL官网复制的链接地址:
1 [root@localhost ~]# wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
2 --2019-07-13 16:19:14-- https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
3 正在解析主机 dev.mysql.com (dev.mysql.com)... 137.254.60.11
4 正在连接 dev.mysql.com (dev.mysql.com)|137.254.60.11|:443... 已连接。
5 已发出 HTTP 请求,正在等待回应... 302 Found
6 位置:https://repo.mysql.com//mysql80-community-release-el7-3.noarch.rpm [跟随至新的 URL]
7 --2019-07-13 16:19:15-- https://repo.mysql.com//mysql80-community-release-el7-3.noarch.rpm
8 正在解析主机 repo.mysql.com (repo.mysql.com)... 184.26.157.95
9 正在连接 repo.mysql.com (repo.mysql.com)|184.26.157.95|:443... 已连接。
10 已发出 HTTP 请求,正在等待回应... 200 OK
11 长度:26024 (25K) [application/x-redhat-package-manager]
12 正在保存至: “mysql80-community-release-el7-3.noarch.rpm.1”
13
14 100%[=====================================================================================================>] 26,024 88.9KB/s 用时 0.3s
15
16 2019-07-13 16:19:17 (88.9 KB/s) - 已保存 “mysql80-community-release-el7-3.noarch.rpm.1” [26024/26024])
17
18 [root@localhost ~]#
安装源码包
使用命令安装MySQL的源码包:
1 [root@localhost ~]# yum install -y mysql80-community-release-el7-3.noarch.rpm
2 已加载插件:fastestmirror
3 正在检查 mysql80-community-release-el7-3.noarch.rpm: mysql80-community-release-el7-3.noarch
4 mysql80-community-release-el7-3.noarch.rpm 将被安装
5 正在解决依赖关系
6 --> 正在检查事务
7 ---> 软件包 mysql80-community-release.noarch.0.el7-3 将被 安装
8 --> 解决依赖关系完成
9
10 依赖关系解决
11 ...
12 完毕!
13 [root@localhost ~]#
再次查看yum仓库中的源码包
使用命令查看yum仓库中有关MySQL的软件包:
1 [root@localhost ~]# yum repolist all | grep mysql
2 mysql-cluster-7.5-community/x86_64 MySQL Cluster 7.5 Community 禁用
3 mysql-cluster-7.5-community-source MySQL Cluster 7.5 Community - So 禁用
4 mysql-cluster-7.6-community/x86_64 MySQL Cluster 7.6 Community 禁用
5 mysql-cluster-7.6-community-source MySQL Cluster 7.6 Community - So 禁用
6 mysql-cluster-8.0-community/x86_64 MySQL Cluster 8.0 Community 禁用
7 mysql-cluster-8.0-community-source MySQL Cluster 8.0 Community - So 禁用
8 !mysql-connectors-community/x86_64 MySQL Connectors Community 启用: 118
9 mysql-connectors-community-source MySQL Connectors Community - Sou 禁用
10 !mysql-tools-community/x86_64 MySQL Tools Community 启用: 95
11 mysql-tools-community-source MySQL Tools Community - Source 禁用
12 mysql-tools-preview/x86_64 MySQL Tools Preview 禁用
13 mysql-tools-preview-source MySQL Tools Preview - Source 禁用
14 mysql55-community/x86_64 MySQL 5.5 Community Server 禁用
15 mysql55-community-source MySQL 5.5 Community Server - Sou 禁用
16 mysql56-community/x86_64 MySQL 5.6 Community Server 禁用
17 mysql56-community-source MySQL 5.6 Community Server - Sou 禁用
18 mysql57-community/x86_64 MySQL 5.7 Community Server 禁用
19 mysql57-community-source MySQL 5.7 Community Server - Sou 禁用
20 !mysql80-community/x86_64 MySQL 8.0 Community Server 启用: 129
21 mysql80-community-source MySQL 8.0 Community Server - Sou 禁用
22 [root@localhost ~]#
可以看到,目前默认安装版本是8.0。
修改安装版本
如果要修改MySQL的安装版本,可以通过修改repo配置文件或者通过执行修改命令来实现。
1)修改文件
编辑mysql-community.repo文件,将 [mysql80-community] 下面的enable设置为0表示关闭8.0版本,然后将 [mysql56-community] 下面的enable设置为1表示开启5.6版本。
命令如下:
1 [root@localhost ~]# vim /etc/yum.repos.d/mysql-community.repo
2)修改命令
关闭8.0版本:
1 [root@localhost ~]# yum-config-manager --disable mysql80-community
2 已加载插件:fastestmirror
3 ====================================================== repo: mysql80-community =======================================================
4 [mysql80-community]
5 ...
6 enabled = 0
7 ...
8 [root@localhost ~]#
开启5.6版本:
1 [root@localhost ~]# yum-config-manager --enable mysql56-community
2 已加载插件:fastestmirror
3 ====================================================== repo: mysql56-community =======================================================
4 [mysql56-community]
5 ...
6 enabled = 1
7 ...
8 [root@localhost ~]#
安装MySQL
安装
使用yum命令安装:
1 [root@localhost ~]# yum install -y mysql-community-server
2 ...
3 ======================================================================================================================================
4 Package 架构 版本 源 大小
5 ======================================================================================================================================
6 正在安装:
7 mysql-community-server x86_64 5.6.45-2.el7 mysql56-community 60 M
8 为依赖而安装:
9 mysql-community-client x86_64 5.6.45-2.el7 mysql56-community 20 M
10 mysql-community-common x86_64 5.6.45-2.el7 mysql56-community 257 k
11 mysql-community-libs x86_64 5.6.45-2.el7 mysql56-community 2.0 M
12 net-tools x86_64 2.0-0.24.20131004git.el7 base 306 k
13 ...
14 完毕!
15 [root@localhost ~]#
查看安装版本
使用命令查看MySQL的安装版本:
1 [root@localhost ~]# mysql -V
2 mysql Ver 14.14 Distrib 5.6.45, for Linux (x86_64) using EditLine wrapper
3 [root@localhost ~]#
启动服务
使用systemctl命令启动并查看MySQL的服务状态:
1 [root@localhost ~]# systemctl start mysqld
2 [root@localhost ~]# systemctl status mysqld
3 ● mysqld.service - MySQL Community Server
4 Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
5 Active: active (running) since 三 2019-08-14 17:18:54 CST; 23s ago
6 Process: 1851 ExecStartPost=/usr/bin/mysql-systemd-start post (code=exited, status=0/SUCCESS)
7 Process: 1791 ExecStartPre=/usr/bin/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
8 Main PID: 1850 (mysqld_safe)
9 CGroup: /system.slice/mysqld.service
10 ├─1850 /bin/sh /usr/bin/mysqld_safe --basedir=/usr
11 └─2016 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mysqld.log...
12
13 8月 14 17:18:53 localhost.localdomain mysql-systemd-start[1791]: PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
14 8月 14 17:18:53 localhost.localdomain mysql-systemd-start[1791]: To do so, start the server, then issue the following commands:
15 8月 14 17:18:53 localhost.localdomain mysql-systemd-start[1791]: /usr/bin/mysqladmin -u root password 'new-password'
16 8月 14 17:18:53 localhost.localdomain mysql-systemd-start[1791]: /usr/bin/mysqladmin -u root -h localhost.localdomain password 'new-password'
17 8月 14 17:18:53 localhost.localdomain mysql-systemd-start[1791]: Alternatively you can run:
18 8月 14 17:18:53 localhost.localdomain mysql-systemd-start[1791]: /usr/bin/mysql_secure_installation
19 8月 14 17:18:53 localhost.localdomain mysql-systemd-start[1791]: which will also give you the option of removing the test
20 8月 14 17:18:53 localhost.localdomain mysqld_safe[1850]: 190814 17:18:53 mysqld_safe Logging to '/var/log/mysqld.log'.
21 8月 14 17:18:53 localhost.localdomain mysqld_safe[1850]: 190814 17:18:53 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
22 8月 14 17:18:54 localhost.localdomain systemd[1]: Started MySQL Community Server.
23 [root@localhost ~]#
连接数据库
MySQL的5.6版本安装完成后,默认root用户是没有密码的,使用命令登录:
1 [root@localhost ~]# mysql -uroot
2 Welcome to the MySQL monitor. Commands end with ; or \g.
3 Your MySQL connection id is 4
4 Server version: 5.6.45 MySQL Community Server (GPL)
5
6 Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
7
8 Oracle is a registered trademark of Oracle Corporation and/or its
9 affiliates. Other names may be trademarks of their respective
10 owners.
11
12 Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
13
14 mysql>
查看版本号
使用 select version(); 命令可以查询MySQL的版本:
1 mysql> select version();
2 +-----------+
3 | version() |
4 +-----------+
5 | 5.6.45 |
6 +-----------+
7 1 row in set (0.00 sec)
8
9 mysql>
简单配置
使用命令对MySQL进行简单配置:
1 [root@localhost ~]# mysql_secure_installation
2
3 NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
4 SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
输入当前的密码,如果没有设置就回车:
1 In order to log into MySQL to secure it, we'll need the current
2 password for the root user. If you've just installed MySQL, and
3 you haven't set the root password yet, the password will be blank,
4 so you should just press enter here.
5
6 Enter current password for root (enter for none):
7 OK, successfully used password, moving on...
是否为root用户设置密码:
1 Setting the root password ensures that nobody can log into the MySQL
2 root user without the proper authorisation.
3
4 Set root password? [Y/n] y
5 New password:
6 Re-enter new password:
7 Password updated successfully!
8 Reloading privilege tables..
9 ... Success!
是否删除匿名用户:
1 By default, a MySQL installation has an anonymous user, allowing anyone
2 to log into MySQL without having to have a user account created for
3 them. This is intended only for testing, and to make the installation
4 go a bit smoother. You should remove them before moving into a
5 production environment.
6
7 Remove anonymous users? [Y/n]
8 ... Success!
是否允许root用户远程登录:
1 Normally, root should only be allowed to connect from 'localhost'. This
2 ensures that someone cannot guess at the root password from the network.
3
4 Disallow root login remotely? [Y/n]
5 ... Success!
是否删除test数据库:
1 By default, MySQL comes with a database named 'test' that anyone can
2 access. This is also intended only for testing, and should be removed
3 before moving into a production environment.
4
5 Remove test database and access to it? [Y/n]
6 - Dropping test database...
7 ERROR 1008 (HY000) at line 1: Can't drop database 'test'; database doesn't exist
8 ... Failed! Not critical, keep moving...
9 - Removing privileges on test database...
10 ... Success!
是否重新加载权限表:
1 Reloading the privilege tables will ensure that all changes made so far
2 will take effect immediately.
3
4 Reload privilege tables now? [Y/n]
5 ... Success!
设置完成:
1 All done! If you've completed all of the above steps, your MySQL
2 installation should now be secure.
3
4 Thanks for using MySQL!
5
6
7 Cleaning up...
8 [root@localhost ~]#
卸载MySQL
查看MySQL已安装的软件包:
1 [root@localhost ~]# yum list installed | grep mysql
2 mysql-community-client.x86_64 5.6.45-2.el7 @mysql56-community
3 mysql-community-common.x86_64 5.6.45-2.el7 @mysql56-community
4 mysql-community-libs.x86_64 5.6.45-2.el7 @mysql56-community
5 mysql-community-server.x86_64 5.6.45-2.el7 @mysql56-community
6 mysql80-community-release.noarch el7-3 installed
7 [root@localhost ~]#
使用yum命令卸载:
1 [root@localhost ~]# yum remove -y mysql80-community-release.noarch mysql-community-client mysql-community-server mysql-community-common mysql-community-libs
2 ...
3 ======================================================================================================================================
4 Package 架构 版本 源 大小
5 ======================================================================================================================================
6 正在删除:
7 mysql-community-client x86_64 5.6.45-2.el7 @mysql56-community 89 M
8 mysql-community-common x86_64 5.6.45-2.el7 @mysql56-community 2.1 M
9 mysql-community-libs x86_64 5.6.45-2.el7 @mysql56-community 9.2 M
10 mysql-community-server x86_64 5.6.45-2.el7 @mysql56-community 252 M
11 mysql80-community-release noarch el7-3 installed 31 k
12 ...
13 完毕!
14 [root@localhost ~]#