在Debian 9系统上安装Mysql数据库的方法教程

所属分类: 数据库 / Mysql 阅读数: 1566
收藏 0 赞 0 分享

前言

看到题目大家应都会想,在 Debian 9 上安装 Mysql?那不是很简单的事儿吗?直接 sudo apt install mysql-server 不就行了吗?

没想到遇到了几个之前没遇到的问题,耽误了不少时间。

原来在 Debian 9 中,Mysql 已经被替换成了 MariaDB,所以和传统的安装 Mysql 有一些不一样的地方。

安装方法

首先我们还是可以用 sudo apt install mysql-server 这样安装上的,但是安装上的还是 MariaDB,所以最好还是采用 sudo apt install mariadb-server 这样吧。

安装上之后,发现和传统的不一样,因为没有弹出设置密码的那个蓝色的界面,误以为直接可以空密码登录。直接尝试 mysql -uroot -p,发现 ERROR 1698 (28000): Access denied for user 'root'@'localhost'。难道默认密码不是空?查看 /etc/mysql/debian.cnf 中默认密码确实是空。

第一反应是执行 mysqld_safe skip-grant-tables,然后 use mysql; ,然后 update user set password=PASSWORD('mysql') where User='root'; 。这样确实可以解决问题,但是重启之后莫名发现又登录不了了。

懵逼一段时间后发现 MaraiDB 的默认密码确实是空,但是只能用 Root 用户登录

注意:这里的用户说的是 linux 系统的 Root 用户,也就是说,你 sudo su 进入 Root 终端后,是可以正常登录的,但是普通用户却无法登录。(为了区别一下,我把 Root 终端的首字母大写,而 mysql 的 root 用户首字母小写)

大概明白了,所以我们不能图方便一直使用 root 用户了,正确的姿势应该是这样的:

首先是 sudo apt install mariadb-server 安装上数据库。

然后 sudo su 切换至 Root 终端,通过 mariadb -uroot -p 登录到数据库,如果默认密码不是空的话,可以查看 '/etc/mysql/debian.cnf'。

这时候要做的是创建新用户:create user 'admin'@'localhost' identified by 'mysql'

然后给新用户设置权限:grant all on *.* to 'admin'@'localhost'

好了,我们又设置了一个方便的 "Root" 用户,只不过改了名字叫做 admin。

PS:我发现在 Root 终端中,不管密码输入什么都能正常连接数据库...晕。

以上就是这篇文章的全部内容,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

更多精彩内容其他人还在看

mysql多表连接查询实例讲解

本篇文章中给大家通过实例代码讲述了mysql多表连接查询的方法,有需要的朋友们可以参考学习下。
收藏 0 赞 0 分享

MySQL设置global变量和session变量的两种方法详解

这篇文章主要介绍了MySQL设置global变量和session变量的两种方法,每种方法给大家介绍的非常详细 ,需要的朋友可以参考下
收藏 0 赞 0 分享

8种手动和自动备份MySQL数据库的方法

作为流行的开源数据库管理系统,MySQL的使用者众多,为了维护数据安全性,数据备份是必不可少的。本文就为大家介绍几种适用于企业的数据备份方法,需要的朋友可以参考下
收藏 0 赞 0 分享

使用JDBC连接Mysql数据库会出现的问题总结

这篇文章主要给大家介绍了关于使用JDBC连接Mysql数据库会出现的问题的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Ubuntu中MySQL的参数文件my.cnf示例详析

这篇文章主要给大家介绍了关于Ubuntu中MySQL的参数文件my.cnf的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用mysql具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

解决启动MongoDB错误:error while loading shared libraries: libstdc++.so.6:cannot open shared object file:

本文提供了解启动MongoDB时提示:error while loading shared libraries: libstdc++.so.6: cannot open shared object file: 错误的解决方案
收藏 0 赞 0 分享

PHP定时备份MySQL与mysqldump语法参数详解

本文为大家介绍了PHP利用mysqldump命令定时备份MySQL与mysqldump语法参数大全以及定时备份的PHP实例代码
收藏 0 赞 0 分享

定时备份 Mysql并上传到七牛的方法

常见的 MySQL 数据备份方式有,直接打包复制对应的数据库或表文件(物理备份)、mysqldump 全量逻辑备份、xtrabackup 增量逻辑备份等。这篇文章主要介绍了定时备份 MySQL 并上传到七牛 ,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL锁(表锁,行锁,共享锁,排它锁,间隙锁)使用详解

本文全面讲解了MySQL中锁包括表锁,行锁,共享锁,排它锁,间隙锁的详细使用方法
收藏 0 赞 0 分享

MySQL中的排序函数field()实例详解

这篇文章主要给大家介绍了关于MySQL中排序函数field()的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享
查看更多