准备把个人电脑完全换成 Linux 系统,但是又有一些软件不得不用,所以就安装了 Deepin(国产深度)操作系统。
安装完成后安装了常用的一些 IDE 、配置好了 JDK 和 Tomcat 。但是在安装 Mysql 的时候出现了问题,查了好多资料,多次尝试,终于解决了,所以分享出来,希望跟我一样遇到此类问题可以跳过这个坑
跟其它 Linux发行版一样,Ctrl + Alt + T(默认快捷方式)打开终端(或者在启动器打开)
~$ sudo apt-get install mysql-server mysql-client
会发现报出这样的错误
网上查了好多资料都说是官方源里面没有 mysql 的程序包,于是分别换了阿里、清华、华为的源,但都是会报同样的错误。
后来到官网下载了压缩包,解压后一个一个安装,安装后输入 mysql -V
可以显示 MySQL 的版本,但是在进入时又会提示找不到命令。然后又查了一下镜像站 mysql 的版本和包名
~$ sudo apt-cache search mysql-server
出奇的发现在阿里的镜像站中 mysql 的包名是 default-mysql-server
,于是把命令换成了
~$ sudo apt-get install default-mysql-server default-mysql-client
果然,安装成功
# 输入如下命令查看mysql是否运行,出现
# tcp 0 0 localhost:mysql 0.0.0.0:* LISTEN 15393/mysqld 则安装成功
~$ sudo netstat -tap | grep mysql
一路安装下来并没有发现设置密码,接下来设置密码。。。天坑(⊙﹏⊙)
注:之前设置密码参考了网上好多资料,跳进了好多坑,皇天不负苦心人。(⊙﹏⊙)
cat /etc/mysql/debian.cnf
记下其中的 user 和 password 字段内容
mysql -u user字段内容 -p
输入 password 字段内容,以 debian 的配置登入 mysql(文件中 password 为空时可以直接留空)
# 使用mysql库
mysql> use mysql;
# 查询字段
mysql> select host,user,plugin,authentication_string from user;
注:root 用户的 plugin为 auth_socket ,密码为空
# 更改密码
mysql> update user set plugin="mysql_native_password",authentication_string=password('新密码') where user="root";
# 刷新权限
mysql> FLUSH PRIVILEGES;
mysql -u root -p并以新密码登入mysql;