Ubuntu - 安装、卸载 MySQL 5.7
Ubuntu 17.10 安装 MySQL 5.7
大致步骤
sudo apt-get update sudo apt-get install mysql-server sudo service mysql status mysqladmin -p -u root version mysql -utoot -p
sudo apt-get update
默认情况下,只有最新版本的 MySQL 包含在 APT 软件包存储库中。在撰写本文时,最新版本是 MySQL 5.7,要安装它,只需更新服务器上的包索引并安装默认包 apt-get。
sudo apt-get install mysql-server
安装 MySQL 服务端。安装过程中,系统将提示您在安装过程中创建 root 密码。选择一个安全的密码,并确保你记住它,因为你以后需要它。接下来,我们将完成 MySQL 的配置。
* sudo mysql_secure_installation
运行安全脚本,安装过程中,此步骤可暂时跳过。
因为是全新安装,需要运行附带的安全脚本。这会更改一些不太安全的默认选项,例如远程 root 登录和示例用户。在旧版本的 MySQL 上,需要手动初始化数据目录,但 Mysql 5.7 已经自动完成了。
sudo service mysql status
mysqladmin -p -u root version
mysql -utoot -p
Shell
zhouk@ubuntu:~$ sudo apt-get update [sudo] zhouk 的密码: 命中:1 http://archive.ubuntukylin.com:10006/ubuntukylin xenial InRelease 命中:2 http://us.archive.ubuntu.com/ubuntu artful InRelease 获取:3 http://security.ubuntu.com/ubuntu artful-security InRelease [78.6 kB] 获取:4 http://us.archive.ubuntu.com/ubuntu artful-updates InRelease [78.6 kB] 获取:5 http://security.ubuntu.com/ubuntu artful-security/main amd64 DEP-11 Metadata [204 B] 获取:6 http://us.archive.ubuntu.com/ubuntu artful-backports InRelease [72.2 kB] 获取:7 http://security.ubuntu.com/ubuntu artful-security/universe amd64 DEP-11 Metadata [10.2 kB] 获取:8 http://us.archive.ubuntu.com/ubuntu artful-updates/main amd64 DEP-11 Metadata [56.7 kB] 获取:9 http://us.archive.ubuntu.com/ubuntu artful-updates/main DEP-11 64x64 Icons [35.1 kB] 获取:10 http://us.archive.ubuntu.com/ubuntu artful-updates/universe amd64 DEP-11 Metadata [48.2 kB] 获取:11 http://us.archive.ubuntu.com/ubuntu artful-updates/universe DEP-11 64x64 Icons [48.4 kB] 获取:12 http://us.archive.ubuntu.com/ubuntu artful-backports/universe amd64 DEP-11 Metadata [4,708 B] 已下载 433 kB,耗时 3秒 (129 kB/s) 正在读取软件包列表... 完成 zhouk@ubuntu:~$ sudo apt-get install mysql-server 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 将会同时安装下列软件: libaio1 libevent-core-2.1-6 mysql-client-5.7 mysql-client-core-5.7 mysql-common mysql-server-5.7 mysql-server-core-5.7 建议安装: mailx tinyca 下列【新】软件包将被安装: libaio1 libevent-core-2.1-6 mysql-client-5.7 mysql-client-core-5.7 mysql-common mysql-server mysql-server-5.7 mysql-server-core-5.7 升级了 0 个软件包,新安装了 8 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。 需要下载 0 B/20.4 MB 的归档。 解压缩后会消耗 160 MB 的额外空间。 您希望继续执行吗? [Y/n] Y 正在预设定软件包 ... 正在选中未选择的软件包 mysql-common。 (正在读取数据库 ... 系统当前共安装有 176830 个文件和目录。) 正准备解包 .../0-mysql-common_5.8+1.0.2ubuntu1_all.deb ... 正在解包 mysql-common (5.8+1.0.2ubuntu1) ... 正在选中未选择的软件包 libaio1:amd64。 正准备解包 .../1-libaio1_0.3.110-4_amd64.deb ... 正在解包 libaio1:amd64 (0.3.110-4) ... 正在选中未选择的软件包 mysql-client-core-5.7。 正准备解包 .../2-mysql-client-core-5.7_5.7.20-0ubuntu0.17.10.1_amd64.deb ... 正在解包 mysql-client-core-5.7 (5.7.20-0ubuntu0.17.10.1) ... 正在选中未选择的软件包 mysql-client-5.7。 正准备解包 .../3-mysql-client-5.7_5.7.20-0ubuntu0.17.10.1_amd64.deb ... 正在解包 mysql-client-5.7 (5.7.20-0ubuntu0.17.10.1) ... 正在选中未选择的软件包 mysql-server-core-5.7。 正准备解包 .../4-mysql-server-core-5.7_5.7.20-0ubuntu0.17.10.1_amd64.deb ... 正在解包 mysql-server-core-5.7 (5.7.20-0ubuntu0.17.10.1) ... 正在选中未选择的软件包 libevent-core-2.1-6:amd64。 正准备解包 .../5-libevent-core-2.1-6_2.1.8-stable-4_amd64.deb ... 正在解包 libevent-core-2.1-6:amd64 (2.1.8-stable-4) ... 正在设置 mysql-common (5.8+1.0.2ubuntu1) ... update-alternatives: 使用 /etc/mysql/my.cnf.fallback 来在自动模式中提供 /etc/mysql/my.cnf (my.cnf) 正在选中未选择的软件包 mysql-server-5.7。 (正在读取数据库 ... 系统当前共安装有 176997 个文件和目录。) 正准备解包 .../mysql-server-5.7_5.7.20-0ubuntu0.17.10.1_amd64.deb ... 正在解包 mysql-server-5.7 (5.7.20-0ubuntu0.17.10.1) ... 正在选中未选择的软件包 mysql-server。 正准备解包 .../mysql-server_5.7.20-0ubuntu0.17.10.1_all.deb ... 正在解包 mysql-server (5.7.20-0ubuntu0.17.10.1) ... 正在设置 libevent-core-2.1-6:amd64 (2.1.8-stable-4) ... 正在处理用于 ureadahead (0.100.0-20) 的触发器 ... 正在处理用于 libc-bin (2.26-0ubuntu2) 的触发器 ... 正在设置 libaio1:amd64 (0.3.110-4) ... 正在处理用于 systemd (234-2ubuntu12.1) 的触发器 ... 正在处理用于 man-db (2.7.6.1-2) 的触发器 ... 正在设置 mysql-client-core-5.7 (5.7.20-0ubuntu0.17.10.1) ... 正在设置 mysql-server-core-5.7 (5.7.20-0ubuntu0.17.10.1) ... 正在设置 mysql-client-5.7 (5.7.20-0ubuntu0.17.10.1) ... 正在设置 mysql-server-5.7 (5.7.20-0ubuntu0.17.10.1) ... update-alternatives: 使用 /etc/mysql/mysql.cnf 来在自动模式中提供 /etc/mysql/my.cnf (my.cnf) Renaming removed key_buffer and myisam-recover options (if present) Created symlink /etc/systemd/system/multi-user.target.wants/mysql.service → /lib/systemd/system/mysql.service. 正在设置 mysql-server (5.7.20-0ubuntu0.17.10.1) ... 正在处理用于 libc-bin (2.26-0ubuntu2) 的触发器 ... 正在处理用于 ureadahead (0.100.0-20) 的触发器 ... 正在处理用于 systemd (234-2ubuntu12.1) 的触发器 ... zhouk@ubuntu:~$ sudo service mysql status ● mysql.service - MySQL Community Server Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2017-12-31 14:32:44 CST; 50s ago Main PID: 3202 (mysqld) Tasks: 28 (limit: 19660) CGroup: /system.slice/mysql.service └─3202 /usr/sbin/mysqld 12月 31 14:32:42 ubuntu systemd[1]: Starting MySQL Community Server... 12月 31 14:32:44 ubuntu systemd[1]: Started MySQL Community Server. zhouk@ubuntu:~$ mysqladmin -p -u root version Enter password: mysqladmin Ver 8.42 Distrib 5.7.20, for Linux on x86_64 Copyright (c) 2000, 2017, 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. Server version 5.7.20-0ubuntu0.17.10.1 Protocol version 10 Connection Localhost via UNIX socket UNIX socket /var/run/mysqld/mysqld.sock Uptime: 3 min 44 sec Threads: 1 Questions: 3 Slow queries: 0 Opens: 107 Flush tables: 1 Open tables: 26 Queries per second avg: 0.013 zhouk@ubuntu:~$ mysql -uroot -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 6 Server version: 5.7.20-0ubuntu0.17.10.1 (Ubuntu) Copyright (c) 2000, 2017, 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> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.00 sec) mysql> use mysql; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> show tables; +---------------------------+ | Tables_in_mysql | +---------------------------+ | columns_priv | | db | | engine_cost | | event | | func | | general_log | | gtid_executed | | help_category | | help_keyword | | help_relation | | help_topic | | innodb_index_stats | | innodb_table_stats | | ndb_binlog_index | | plugin | | proc | | procs_priv | | proxies_priv | | server_cost | | servers | | slave_master_info | | slave_relay_log_info | | slave_worker_info | | slow_log | | tables_priv | | time_zone | | time_zone_leap_second | | time_zone_name | | time_zone_transition | | time_zone_transition_type | | user | +---------------------------+ 31 rows in set (0.00 sec) mysql>
Ubuntu 17.10 卸载 MySQL 5.7
步骤大致4步
sudo apt purge mysql-* sudo rm -rf /etc/mysql/ /var/lib/mysql sudo apt autoremove sudo apt autoclean
sudo apt purge mysql-*
sudo rm -rf /etc/mysql/ /var/lib/mysql
sudo apt autoremove
sudo apt autoclean
重启虚拟机!
Shell
zhouk@ubuntu:~$ sudo apt purge mysql-* [sudo] zhouk 的密码: 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 注意,根据Glob 'mysql-*' 选中了 'mysql-workbench' 注意,根据Glob 'mysql-*' 选中了 'mysql-client-5.5' 注意,根据Glob 'mysql-*' 选中了 'mysql-client-5.6' 注意,根据Glob 'mysql-*' 选中了 'mysql-client-5.7' 注意,根据Glob 'mysql-*' 选中了 'mysql-common-5.6' 注意,根据Glob 'mysql-*' 选中了 'mysql-server-5.0' 注意,根据Glob 'mysql-*' 选中了 'mysql-server-5.1' 注意,根据Glob 'mysql-*' 选中了 'mysql-server-5.5' 注意,根据Glob 'mysql-*' 选中了 'mysql-server-5.6' 注意,根据Glob 'mysql-*' 选中了 'mysql-server-5.7' 注意,根据Glob 'mysql-*' 选中了 'mysql-utilities' 注意,根据Glob 'mysql-*' 选中了 'mysql-testsuite' 注意,根据Glob 'mysql-*' 选中了 'mysql-server' 注意,根据Glob 'mysql-*' 选中了 'mysql-client' 注意,根据Glob 'mysql-*' 选中了 'mysql-sandbox' 注意,根据Glob 'mysql-*' 选中了 'mysql-client-core-5.5' 注意,根据Glob 'mysql-*' 选中了 'mysql-client-core-5.6' 注意,根据Glob 'mysql-*' 选中了 'mysql-client-core-5.7' 注意,根据Glob 'mysql-*' 选中了 'mysql-testsuite-5.5' 注意,根据Glob 'mysql-*' 选中了 'mysql-testsuite-5.6' 注意,根据Glob 'mysql-*' 选中了 'mysql-testsuite-5.7' 注意,根据Glob 'mysql-*' 选中了 'mysql-common' 注意,根据Glob 'mysql-*' 选中了 'mysql-workbench-data' 注意,根据Glob 'mysql-*' 选中了 'mysql-server-core-5.1' 注意,根据Glob 'mysql-*' 选中了 'mysql-server-core-5.5' 注意,根据Glob 'mysql-*' 选中了 'mysql-server-core-5.6' 注意,根据Glob 'mysql-*' 选中了 'mysql-server-core-5.7' 注意,根据Glob 'mysql-*' 选中了 'mysql-source-5.7' 软件包 mysql-client-5.5 未安装,所以不会被卸载 软件包 mysql-client-5.6 未安装,所以不会被卸载 软件包 mysql-server-core-5.6 未安装,所以不会被卸载 软件包 mysql-client-core-5.5 未安装,所以不会被卸载 软件包 mysql-client-core-5.6 未安装,所以不会被卸载 注意,选中 'mysql-common' 而非 'mysql-common-5.6' 软件包 mysql-server-5.5 未安装,所以不会被卸载 软件包 mysql-server-5.6 未安装,所以不会被卸载 软件包 mysql-server-core-5.5 未安装,所以不会被卸载 软件包 mysql-testsuite-5.5 未安装,所以不会被卸载 软件包 mysql-testsuite-5.6 未安装,所以不会被卸载 软件包 mysql-server-5.0 未安装,所以不会被卸载 软件包 mysql-server-5.1 未安装,所以不会被卸载 软件包 mysql-server-core-5.1 未安装,所以不会被卸载 软件包 mysql-sandbox 未安装,所以不会被卸载 软件包 mysql-utilities 未安装,所以不会被卸载 软件包 mysql-workbench 未安装,所以不会被卸载 软件包 mysql-workbench-data 未安装,所以不会被卸载 软件包 mysql-client 未安装,所以不会被卸载 软件包 mysql-source-5.7 未安装,所以不会被卸载 软件包 mysql-testsuite 未安装,所以不会被卸载 软件包 mysql-testsuite-5.7 未安装,所以不会被卸载 下列软件包是自动安装的并且现在不需要了: libaio1 libevent-core-2.1-6 使用'sudo apt autoremove'来卸载它(它们)。 下列软件包将被【卸载】: mysql-client-5.7* mysql-client-core-5.7* mysql-common* mysql-server* mysql-server-5.7* mysql-server-core-5.7* 升级了 0 个软件包,新安装了 0 个软件包,要卸载 6 个软件包,有 0 个软件包未被升级。 解压缩后将会空出 160 MB 的空间。 您希望继续执行吗? [Y/n] Y (正在读取数据库 ... 系统当前共安装有 177086 个文件和目录。) 正在卸载 mysql-server (5.7.20-0ubuntu0.17.10.1) ... 正在卸载 mysql-server-5.7 (5.7.20-0ubuntu0.17.10.1) ... update-alternatives: 使用 /etc/mysql/my.cnf.fallback 来在自动模式中提供 /etc/mysql/my.cnf (my.cnf) 正在卸载 mysql-client-5.7 (5.7.20-0ubuntu0.17.10.1) ... 正在卸载 mysql-client-core-5.7 (5.7.20-0ubuntu0.17.10.1) ... 正在卸载 mysql-common (5.8+1.0.2ubuntu1) ... 正在卸载 mysql-server-core-5.7 (5.7.20-0ubuntu0.17.10.1) ... 正在处理用于 man-db (2.7.6.1-2) 的触发器 ... (正在读取数据库 ... 系统当前共安装有 176859 个文件和目录。) 正在清除 mysql-common (5.8+1.0.2ubuntu1) 的配置文件 ... 正在清除 mysql-server-5.7 (5.7.20-0ubuntu0.17.10.1) 的配置文件 ... 正在处理用于 ureadahead (0.100.0-20) 的触发器 ... 正在处理用于 systemd (234-2ubuntu12.1) 的触发器 ... zhouk@ubuntu:~$ sudo rm -rf /etc/mysql/ /var/lib/mysql zhouk@ubuntu:~$ sudo apt autoremove 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 下列软件包将被【卸载】: libaio1 libevent-core-2.1-6 升级了 0 个软件包,新安装了 0 个软件包,要卸载 2 个软件包,有 0 个软件包未被升级。 解压缩后将会空出 286 kB 的空间。 您希望继续执行吗? [Y/n] Y (正在读取数据库 ... 系统当前共安装有 176841 个文件和目录。) 正在卸载 libaio1:amd64 (0.3.110-4) ... 正在卸载 libevent-core-2.1-6:amd64 (2.1.8-stable-4) ... 正在处理用于 libc-bin (2.26-0ubuntu2) 的触发器 ... zhouk@ubuntu:~$ sudo apt autoclean 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 zhouk@ubuntu:~$
ojbk