Ubuntu18.04下安装卸载Mysql5.7及MySQL的一些基本操作
文章目录
安装卸载MySQL(两种装法)
1.终端下apt命令安装(坑太多,不推荐)
- 18.04默认安装mysql5.7,使用如下命令安装:
sudo apt-get --purge remove mysql-server mysql-common mysql-client sudo apt-get install mysql-server mysql-common mysql-client
- 如果在使用命令
mysql -u root -p
连接mysql数据库时报错!
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: NO) 解决方案:跳过密码验证,更改root用户密码
- 编辑mysql配置文件 :
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
- 添加跳过密码验证命令:
skip-grant-tables
- 重启mysql服务:
service mysql status service mysql restart
- 重连数据库
mysql -u root -p
将成功跳过密码验证,之后需要更改root
用户密码及密码规则:update mysql.user set authentication_string=PASSWORD('123456'),plugin='mysql_native_password' where user='root';
- 注释掉跳过密码验证命令:
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
# skip-grant-tables
- 重启mysql服务
service mysql restart
- 重连数据库成功!
2.官网下载安装(推荐)
- MySQL官网,寻找下载开源免费社区版;
- 在APT下载页面下载DEB格式的安装包,默认下载至
~/下载
目录下。 - 进入
~/下载
目录下:cd ~/下载
- 安装MySQL:
sudo dpkg -i mysql*.deb sudo apt install -f #修复依赖
安装步骤可参考这个。 - 配置MySQL:
MySQL数据库配置文件位于
/etc/mysql
目录下,mysqld
配置位于/etc/mysql/mysql.conf.d
目录下,mysql
配置位于/etc/mysql/conf.d
目录下。可在此修改配置。 - 编码统一修改为utf8:修改
mysqld
配置文件加一行character_set_server=utf8
。
卸载MySQL
- 首先在系统终端中查看MySQL的依赖项,运行命令:
dpkg --list|grep mysql
- 卸载命令:
sudo apt remove mysql*
- 卸载命令:
sudo apt autoremove --purge mysql-server-5.7
- 清除残留数据,运行命令:
dpkg -l|grep ^rc|awk '{print$2}'|sudo xargs dpkg -P
- 再次查看MySQL的剩余依赖项,运行命令:
dpkg --list|grep mysql
- 如果仍有依赖,运行命令:
sudo apt autoremove --purge 依赖
- 直至卸载完全。
使用MySQL
Mysql的一些常用操作
- 查询数据库设置的编码格式
show variables like '%character_set%';
- 修改数据库或者表的编码格式
alter database/table 数据库名/表名 character set utf8;
- 建数据库
create database 数据库名;
- 查数据库
show databases;
- 使用某数据库
use 数据库名;
- 查数据表
show tables;
- 查看表结构
desc 表名;
- 创建表
create table 表名( 列名 数据格式及大小 约束条件等, ... ... ... );
- 删除表
drop table 表名;
踩坑1
- mysql执行
source xxx.sql
报错如下: ERROR:
Failed to open file ‘‘xxx.sql’’, error: 2
-
去掉文件路径的引号。
踩坑2
- 更改了
/etc/mysql
下的配置文件后,重启mysql失败,报错如下:Job for mysql.service failed because the control process exited with error code.
See “systemctl status mysql.service” and “journalctl -xe” for details. -
执行
systemctl status mysql.service
结果如下:● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en
Active: failed (Result: exit-code) since Mon 2019-05-27 22:00:25 CST; 1min 21
Process: 1143 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/my
Process: 22420 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exi
Main PID: 1146 (code=exited, status=0/SUCCESS)5月 27 22:00:25 yzb-ubuntu systemd[1]: Failed to start MySQL Community Server.
5月 27 22:00:25 yzb-ubuntu systemd[1]: mysql.service: Service hold-off time over
5月 27 22:00:25 yzb-ubuntu systemd[1]: mysql.service: Scheduled restart job, res
5月 27 22:00:25 yzb-ubuntu systemd[1]: Stopped MySQL Community Server.
5月 27 22:00:25 yzb-ubuntu systemd[1]: mysql.service: Start request repeated too
5月 27 22:00:25 yzb-ubuntu systemd[1]: mysql.service: Failed with result 'exit-c
5月 27 22:00:25 yzb-ubuntu systemd[1]: Failed to start MySQL Community Server. -
解决方案:
寻找问题源头
-
cat /var/log/syslog
寻找mysql进程的详细错误信息:
May 27 21:53:37 yzb-ubuntu systemd[1]: Starting MySQL Community Server…
May 27 21:53:37 yzb-ubuntu kernel: [33807.121391] audit: type=1400 audit(1558965217.950:60): apparmor=“DENIED” operation=“open” profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=22120 comm=“mysqld” requested_mask=“r” denied_mask=“r” fsuid=0 ouid=0
May 27 21:53:38 yzb-ubuntu mysql-systemd-start[22113]: ERROR: Unable to start MySQL server:
May 27 21:53:38 yzb-ubuntu mysql-systemd-start[22113]: 2019-05-27T13:53:38.001621Z 0 [ERROR] unknown variable 'default-character-set=utf8’
May 27 21:53:38 yzb-ubuntu mysql-systemd-start[22113]: 2019-05-27T13:53:38.006919Z 0 [ERROR] Aborting
May 27 21:53:38 yzb-ubuntu mysql-systemd-start[22113]: Please take a look at https://wiki.debian.org/Teams/MySQL/FAQ for tips on fixing common upgrade issues.
May 27 21:53:38 yzb-ubuntu mysql-systemd-start[22113]: Once the problem is resolved, restart the service.
May 27 21:53:38 yzb-ubuntu systemd[1]: mysql.service: Control process exited, code=exited status=1
May 27 21:53:38 yzb-ubuntu systemd[1]: mysql.service: Failed with result ‘exit-code’.
May 27 21:53:38 yzb-ubuntu systemd[1]: Failed to start MySQL Community Server.
May 27 21:53:38 yzb-ubuntu systemd[1]: mysql.service: Service hold-off time over, scheduling restart.
May 27 21:53:38 yzb-ubuntu systemd[1]: mysql.service: Scheduled restart job, restart counter is at 5.
May 27 21:53:38 yzb-ubuntu systemd[1]: Stopped MySQL Community Server.
May 27 21:53:38 yzb-ubuntu systemd[1]: mysql.service: Start request repeated too quickly.
May 27 21:53:38 yzb-ubuntu systemd[1]: mysql.service: Failed with result ‘exit-code’.
May 27 21:53:38 yzb-ubuntu systemd[1]: Failed to start MySQL Community Server. -
原因找到了 [ERROR] unknown variable 'default-character-set=utf8’
-
解决方法:进入配置文件,将此行删除即可。
- ubuntu16.04安装和卸载MySQL5.7
- 将ubuntu14.04 从mysql从5.5删除之后安装5.7遇到的一些问题(本篇不讨论热升级)
- Linux基本操作系列(三):在CentOS 6.8系统上安装MySQL 5.7
- Linux基本操作系列(三):在CentOS 6.8系统上安装MySQL 5.7
- Ubuntu下安装mongodb及一些基本操作
- Linux基本操作系列(三):在CentOS 6.8系统上安装MySQL 5.7
- Linux基本操作系列(三):在CentOS 6.8系统上安装MySQL 5.7
- Ubuntu 14 安装jdk8,MySql的安装卸载等一些常用的命令
- ubuntu在线安装Mysql及一些操作
- Ubuntu下MySql的安装于基本操作
- Linux基本操作系列(三):在CentOS 6.8系统上安装MySQL 5.7
- mac mysql-server 安装以及一些基本操作
- Linux基本操作系列(三):在CentOS 6.8系统上安装MySQL 5.7
- ubuntu 18.04 安装好后关于深度学习的一些简单操作
- yum安装mysql以及一些基本操作
- Linux基本操作系列(三):在CentOS 6.8系统上安装MySQL 5.7
- Linux基本操作系列(三):在CentOS 6.8系统上安装MySQL 5.7
- Linux基本操作系列(三):在CentOS 6.8系统上安装MySQL 5.7
- Linux基本操作系列(三):在CentOS 6.8系统上安装MySQL 5.7
- Linux基本操作系列(三):在CentOS 6.8系统上安装MySQL 5.7