Ubuntu18.04下安装MySQL(图文教程)

 更新时间:2019年10月22日 08:58:52   作者:OpsDrip  
这篇文章主要介绍了Ubuntu18.04下安装MySQL的方法,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

提示:以下操作均在root权限下进行。

# 查看有没有安装MySQL:

dpkg -l | grep mysql

# 安装MySQL:

apt install mysql-server

安装完成之后可以使用如下命令来检查是否安装成功:

netstat -tap | grep mysql

通过上述命令检查之后,如果看到有 mysql 的socket处于 LISTEN 状态则表示安装成功。

登录mysql数据库可以通过如下命令:

mysql -u root -p

-u 表示选择登陆的用户名, -p 表示登陆的用户密码,现在是mysql数据库是没有密码的,Enter password:处直接回车,就能够进入mysql数据库。

然后通过 show databases; 就可以查看当前的所有数据库。

接下来,为了确保数据库的安全性和正常运转,对数据库进行初始化操作。这个初始化操作涉及下面5个步骤。

(1)安装验证密码插件。

(2)设置root管理员在数据库中的专有密码。

(3)随后删除匿名账户,并使用root管理员从远程登录数据库,以确保数据库上运行的业务的安全性。

(4)删除默认的测试数据库,取消测试数据库的一系列访问权限。

(5)刷新授权列表,让初始化的设定立即生效。

对于上述数据库初始化的操作步骤,在下面的输出信息旁边我做了简单注释。

root@ubuntu-virtual-machine:~# mysql_secure_installation

Securing the MySQL server deployment.

Connecting to MySQL using a blank password.

VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin? #要安装验证密码插件吗?

Press y|Y for Yes, any other key for No: N # 这里我选择N
Please set the password for root here.

New password: #输入要为root管理员设置的数据库密码

Re-enter new password: #再次输入密码

By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : y #删除匿名账户
Success.

Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : N #禁止root管理员从远程登录,这里我没有禁止

... skipping.
By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y #删除test数据库并取消对它的访问权限
- Dropping test database...
Success.

- Removing privileges on test database...
Success.

Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y #刷新授权表,让初始化后的设定立即生效
Success.

All done!

检查mysql服务状态:

systemctl status mysql

显示如下结果说明mysql服务运行是正常的:

再次用mysql -u root -p命令,Enter password:处输入刚设置的密码,回车,就能够进入mysql数据库。

使用 use mysql; 命令打开mysql命名的数据库,显示当前数据库的表:show tables; 查询user表里的数据:select * from user;(user表里是mysql数据库的所有账户信息)

现在配置mysql允许远程访问,首先编辑 /etc/mysql/mysql.conf.d/mysqld.cnf 配置文件:

vim /etc/mysql/mysql.conf.d/mysqld.cnf

注释掉bind-address = 127.0.0.1

保存退出,然后进入mysql数据库,执行授权命令:

mysql -u root -p
mysql> grant all on *.* to root@'%' identified by '你的密码' with grant option;
mysql> flush privileges; # 刷新权限
mysql> exit

然后执行exit命令退出mysql服务,再执行如下命令重启mysql:

systemctl restartmysql

现在Windows下可以使用Navicat图形化工具远程连接Ubuntu下的MySQL数据库,输入刚授权远程权限的密码。

这里顺便再分享下:Navicat for MySQL 10.1.7安装包

链接: https://pan.baidu.com/s/12P1BcvQsRetBY0jGIvwILw&shfl=shareset 提取码: 8bft

OK,到这里Ubuntu18.04下安装MySQL已经完成了。

操作过程中我遇到了以下错误:

E: 无法获得锁 /var/lib/dpkg/lock-frontend - open (11: 资源暂时不可用)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?

解决方法,参考自文章:https://www.jb51.net/article/172460.htm

总结

以上所述是小编给大家介绍的Ubuntu18.04下安装MySQL的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • Apache Kafka 分区重分配的实现原理解析

    Apache Kafka 分区重分配的实现原理解析

    这篇文章主要介绍了Apache Kafka 分区重分配的实现原理,本文结合 2.0.0 版本的 Kafka 源码,详细介绍了 Kafka 分区副本重分配的流程和逻辑,需要的朋友可以参考下
    2022-07-07
  • Linux RabbitMQ 集群搭建流程图解

    Linux RabbitMQ 集群搭建流程图解

    在介绍RabbitMQ之前实现要介绍一下MQ,MQ是什么?MQ全称是Message Queue,可以理解为消息队列的意思,简单来说就是消息以管道的方式进行传递。RabbitMQ是一个实现了AMQP(Advanced Message Queuing Protocol)高级消息队列协议的消息队列服务,用Erlang语言的
    2021-11-11
  • Linux tr命令的使用方法

    Linux tr命令的使用方法

    这篇文章主要介绍了Linux tr命令的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • Linux中如何修改~/.bashrc或/etc/profile设置环境变量

    Linux中如何修改~/.bashrc或/etc/profile设置环境变量

    这篇文章主要介绍了Linux中如何修改~/.bashrc或/etc/profile设置环境变量问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • CentOS 7.x下的LEMP环境搭建详细教程

    CentOS 7.x下的LEMP环境搭建详细教程

    我们常说的LNMP环境是指Linux/nginx/MySQL/PHP组合,LEMP包是由Linux、nginx、MariaDB/MySQL和PHP组成的,那么看来LEMP和LNMP是一样的,而现在业内习惯性的称作LEMP。这篇文章主要介绍了CentOS 7.x下的LEMP环境搭建详细教程,需要的朋友可以参考下
    2016-10-10
  • Linux下Redis允许远程连接的实现方法

    Linux下Redis允许远程连接的实现方法

    今天小编就为大家分享一篇Linux下Redis允许远程连接的实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • 浅析centos 7 自带的 php 5.4升级为 5.6的方法

    浅析centos 7 自带的 php 5.4升级为 5.6的方法

    这篇文章主要介绍了centos 7 自带的 php 5.4升级为 5.6的方法,需要的朋友可以参考下
    2018-12-12
  • linux环境下设置shadowsocks+polipo全局代理

    linux环境下设置shadowsocks+polipo全局代理

    XX-NET仅仅可以是用户通过浏览器访问外面世界,而非系统全局代理,使用shadowsocks+polipo技术可使功能进一步拓展
    2018-09-09
  • Linux下完全删除用户的两种方法

    Linux下完全删除用户的两种方法

    这篇文章主要介绍了Linux下完全删除用户的两种方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-10-10
  • Apache中如何设置默认首页具体该怎么操作

    Apache中如何设置默认首页具体该怎么操作

    这篇文章主要介绍了Apache中设置默认首页的方法,需要的朋友可以参考下
    2014-02-02

最新评论