阿里云 Ubuntu18.04安装mysql(超详细)

阿里云 Ubuntu18.04安装mysql(成功跑过)

 

因为用flask写后端要用到mysql,想装到阿里云的Ubuntu18.04上。看了无数的教程,踩了无数的坑,我终于安装成功了!!!本文手把手教你怎么在Ubuntu18.04上安装mysql!!避免天坑,节约时间,从我做起!!! (这里为5.7版本,因为8.0+的实在没装成功,据说也有兼容性问题,但是5.7也能用啊挺好的不影响~)

好的我们要开始了!!准备好了嘛?

一、彻底卸载

是的,可能你之前踩了很多坑,现在乱七八糟的文件堆在一起,那么既然我们要从头开始,就把他们卸载干净叭!!

1、查看mysql的依赖项:

dpkg --list|grep mysql
  • 1

2、卸载

sudo apt-get remove mysql-common
  • 1

3、卸载(最后的版本数字根据自己具体的版本进行相应的修改)

sudo apt-get autoremove --purge mysql-server-5.7
  • 1

4、清楚残留数据

dpkg -l|grep ^rc|awk '{print$2}'|sudo xargs dpkg -P
  • 1

5、再次查看依赖项

dpkg --list|grep mysql
  • 1

若命令输入之后无反应直接出现命令提示符(也就是啥也没发生跳到下一行了,并且没有报错),则说明依赖项完全删除

6、若仍有其他内容,则继续清除剩余依赖项:(这里的命令与上一条清除命令不同)

sudo apt-get autoremove --purge mysql-apt-config
  • 1

最后再查看依赖项,跟上一条说的一样,要删干净才算好了,不然就重复该命令叭(我还好,一次就过了)


可能出现的问题(这个问题可能出现在下面安装的时候)
在这里插入图片描述
要是碰到这种报错,那就删除一下 /var/lib/mysql 还有 /etc/mysql,即按照下面的代码顺序挨个走一遍:

sudo rm /var/lib/mysql/ -R
sudo rm /etc/mysql/ -R
sudo apt-get autoremove mysql* --purge
sudo apt-get remove apparmor
sudo apt-get install mysql-server mysql-common
  • 1
  • 2
  • 3
  • 4
  • 5

应该可以解决了叭(反正我这样就可以了,要是还不行可以在评论区留言报错内容)


二、安装mysql

1、安装

sudo apt-get --purge remove mysql-server mysql-common mysql-client
sudo apt-get install mysql-server mysql-common mysql-client
  • 1
  • 2

2、启动mysql

sudo /etc/init.d/mysql restart
  • 1

3、字符集修改utf8
需要utf8格式的话就要修改一丢丢代码,首先输入

sudo vim /etc/mysql/my.cnf
  • 1

进去以后原本代码的后面添加如下几行代码:(注意进去以后先按“i”才能编辑)

[mysqld]
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8
  • 1
  • 2
  • 3
  • 4

然后保存(esc + “:wq” + 回车)

然后重启

service mysql restart
  • 1

4、进入mysql
这个时候密码还是默认的空格,所以用下面这行代码就能就去了

sudo mysql -u root
  • 1

三、其他一些操作

1、修改密码

先进mysql

sudo mysql -u root
  • 1

然后(用新密码替换newpassword即可)

alter user'root'@'localhost' identified by 'newpassword';
  • 1

2、创建新的database(注意替换)

CREATE DATABASE IF NOT EXISTS `new_database_name`;
  • 1

3、创建新用户并给某database的权限(注意替换)

CREATE USER 'new_user_name'@'localhost' IDENTIFIED BY ‘database_name’;
GRANT ALL PRIVILEGES ON `database_name`.* TO 'new_user_name'@'localhost';
  • 1
  • 2

4、进去该数据库,然后才能对它进行各种操作

USE `database_name`;
  • 1

5、在mysql中查找数据库和表

前提是已经进入了该数据库:

USE `database_name`;
  • 1

查看table

show tables;   
  • 1

查看某table中的具体属性

desc xxx;
  • 1

查看xxx table中的数据

select * from xxx;
  • 1

6、更新数据

下面举个例子,下面是把表中B=1那一行中A设置为0

update table_name set A = 0 where B = 1;
  • 1

7、SQL删除操作

清空table的数据

delete from xxx
  • 1

删除table

drop table xxx; 
  • 1

 

navicat 连接服务器

1、

2、


Navicat连接服务器Mysql出现:ERROR 1698 (28000): Access denied for user 'root'@'localhost'

登录Mysql

sudo mysql -u root -p
  • 1

查看user表(错误发生的原因就是root的plugin设置错误)

select user, plugin from mysql.user;
  • 1

在这里插入图片描述

修改root的plugin为自己的密码

update mysql.user set authentication_string=PASSWORD('your passwd'), plugin='mysql_native_password' where user='root';
  • 1

your passwd" 字段为你想设置的密码"

刷新

flush privileges;
  •  
  •  
  •  
  •  
  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值