前言:网上mysql的安装方式参差不齐,有的装了缺少配置文件,有的装了少库少表 所以现在出一个完整的mysql安装方案

目前安装方式无外乎有下面三种:

装完没有密码,需要自己进去设置密码装完有默认密码,需要查看并进去在自己修改安装的时候输入密码,安装完成后直接使用

本文使用的正是第三种

正式开始

1、mysql的下载

mysql官网下载地址:https://dev.mysql.com/downloads/mysql/

进入后 点击红圈的链接

就会进入到5.7的下载界面了 可以根据需要下载对应系统所需要的包

这里我们下载对应ubuntu的tar包 并且将其上传到ubuntu内

解压

root@wdr:/opt# mkdir /opt/mysql

root@wdr:~# tar -xvf mysql-server_5.7.42-1ubuntu18.04_amd64.deb-bundle.tar -C /opt/mysql/

libmysqlclient20_5.7.42-1ubuntu18.04_amd64.deb

libmysqlclient-dev_5.7.42-1ubuntu18.04_amd64.deb

libmysqld-dev_5.7.42-1ubuntu18.04_amd64.deb

mysql-client_5.7.42-1ubuntu18.04_amd64.deb

mysql-common_5.7.42-1ubuntu18.04_amd64.deb

mysql-community-client_5.7.42-1ubuntu18.04_amd64.deb

mysql-community-server_5.7.42-1ubuntu18.04_amd64.deb

mysql-community-source_5.7.42-1ubuntu18.04_amd64.deb

mysql-community-test_5.7.42-1ubuntu18.04_amd64.deb

mysql-server_5.7.42-1ubuntu18.04_amd64.deb

mysql-testsuite_5.7.42-1ubuntu18.04_amd64.deb

root@wdr:~#

查看

root@wdr:~# cd /opt/mysql/

root@wdr:/opt/mysql# ls

libmysqlclient20_5.7.42-1ubuntu18.04_amd64.deb mysql-community-server_5.7.42-1ubuntu18.04_amd64.deb

libmysqlclient-dev_5.7.42-1ubuntu18.04_amd64.deb mysql-community-source_5.7.42-1ubuntu18.04_amd64.deb

libmysqld-dev_5.7.42-1ubuntu18.04_amd64.deb mysql-community-test_5.7.42-1ubuntu18.04_amd64.deb

mysql-client_5.7.42-1ubuntu18.04_amd64.deb mysql-server_5.7.42-1ubuntu18.04_amd64.deb

mysql-common_5.7.42-1ubuntu18.04_amd64.deb mysql-testsuite_5.7.42-1ubuntu18.04_amd64.deb

mysql-community-client_5.7.42-1ubuntu18.04_amd64.deb

root@wdr:/opt/mysql#

使用dpkg -i命令顺序安装 安装最后mysql-community-server这个包的时候可能会报错 但是不要惊慌

dpkg -i mysql-common_5.7.42-1ubuntu18.04_amd64.deb

dpkg -i libmysqlclient20_5.7.42-1ubuntu18.04_amd64.deb

dpkg -i libmysqlclient-dev_5.7.42-1ubuntu18.04_amd64.deb

dpkg -i libmysqld-dev_5.7.42-1ubuntu18.04_amd64.deb

dpkg -i mysql-community-server_5.7.42-1ubuntu18.04_amd64.deb

在安装mysql server这个包的时候 会报依赖错误 告诉我们缺少mysql-client 而且还少libmecab libmecab我们暂时先不管 后面有命令统一解决

root@wdr:/opt/mysql# dpkg -i mysql-community-server_5.7.42-1ubuntu18.04_amd64.deb

Selecting previously unselected package mysql-community-server.

(Reading database ... 74128 files and directories currently installed.)

Preparing to unpack mysql-community-server_5.7.42-1ubuntu18.04_amd64.deb ...

Unpacking mysql-community-server (5.7.42-1ubuntu18.04) ...

dpkg: dependency problems prevent configuration of mysql-community-server:

mysql-community-server depends on mysql-client (= 5.7.42-1ubuntu18.04); however:

Package mysql-client is not installed.

mysql-community-server depends on libmecab2; however:

Package libmecab2 is not installed.

dpkg: error processing package mysql-community-server (--install):

dependency problems - leaving unconfigured

Processing triggers for man-db (2.10.2-1) ...

Errors were encountered while processing:

mysql-community-server

我们先安装mysql-client 然后此时你会发现 又提示缺少mysql-community-client这个依赖包 继续装

root@wdr:/opt/mysql# dpkg -i mysql-client_5.7.42-1ubuntu18.04_amd64.deb

Selecting previously unselected package mysql-client.

(Reading database ... 74290 files and directories currently installed.)

Preparing to unpack mysql-client_5.7.42-1ubuntu18.04_amd64.deb ...

Unpacking mysql-client (5.7.42-1ubuntu18.04) ...

dpkg: dependency problems prevent configuration of mysql-client:

mysql-client depends on mysql-community-client (= 5.7.42-1ubuntu18.04); however:

Package mysql-community-client is not installed.

dpkg: error processing package mysql-client (--install):

dependency problems - leaving unconfigured

Errors were encountered while processing:

mysql-client

root@wdr:/opt/mysql#

现在他只告诉你缺少libmecab这个包了 在不同的ubuntu版本下 缺少的版本并不相同 比如这里缺少libtinfo5 然而在有的环境下缺libtinfo1 libtinfo2 等等

root@wdr:/opt/mysql# dpkg -i mysql-community-client_5.7.42-1ubuntu18.04_amd64.deb

Selecting previously unselected package mysql-community-client.

(Reading database ... 74296 files and directories currently installed.)

Preparing to unpack mysql-community-client_5.7.42-1ubuntu18.04_amd64.deb ...

Unpacking mysql-community-client (5.7.42-1ubuntu18.04) ...

dpkg: dependency problems prevent configuration of mysql-community-client:

mysql-community-client depends on libtinfo5 (>= 6); however:

Package libtinfo5 is not installed.

dpkg: error processing package mysql-community-client (--install):

dependency problems - leaving unconfigured

Processing triggers for man-db (2.10.2-1) ...

Errors were encountered while processing:

mysql-community-client

下面我们只需要使用 apt --fix-broken install 这条命令来自动解决当前所出现的依赖 就可以完美解决问题了 选择Y同意

root@wdr:/opt/mysql# apt --fix-broken install

Reading package lists... Done

Building dependency tree... Done

Reading state information... Done

Correcting dependencies... Done

The following additional packages will be installed:

libmecab2 libtinfo5

The following NEW packages will be installed:

libmecab2 libtinfo5

0 upgraded, 2 newly installed, 0 to remove and 50 not upgraded.

3 not fully installed or removed.

Need to get 298 kB of archives.

After this operation, 1,432 kB of additional disk space will be used.

Do you want to continue? [Y/n]

同意继续后 安装一会就会提示你输入mysql的root密码了

我们输入完两次密码后 mysql的安装也就完成了

root@wdr:/opt/mysql# mysql -u root -p123456

mysql: [Warning] Using a password on the command line interface can be insecure.

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 3

Server version: 5.7.42 MySQL Community Server (GPL)

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

当然 mysql的安装是完成了 但是此时它并不能为我们的程序提供服务(使用连接工具现在是连接不上的) 因为还需要配置远程连接 使我们可以远程登录才可以

首先 进入mysql库 查看user表 会发现我们的root用户是localhost

mysql> use mysql;

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

Database changed

mysql>

mysql> select User,Host from user;

+---------------+-----------+

| User | Host |

+---------------+-----------+

| mysql.session | localhost |

| mysql.sys | localhost |

| root | localhost |

+---------------+-----------+

3 rows in set (0.00 sec)

mysql>

将其修改 并使其立即生效

mysql> update user set host = '%' where user = 'root';

Query OK, 1 row affected (0.00 sec)

Rows matched: 1 Changed: 1 Warnings: 0

mysql> select User,Host from user;

+---------------+-----------+

| User | Host |

+---------------+-----------+

| root | % |

| mysql.session | localhost |

| mysql.sys | localhost |

+---------------+-----------+

3 rows in set (0.00 sec)

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

mysql>

此时到这里并未结束 我们还需要修改mysql的配置文件 我们需要修改位于/etc/mysql/mysql.conf.d/mysqld.cnf 的配置文件

root@wdr:/opt/mysql# vim /etc/mysql/mysql.conf.d/mysqld.cnf

将其bind-address改为0.0.0.0

保存退出 重启mysql服务

root@wdr:/opt/mysql# systemctl restart mysql

root@wdr:/opt/mysql#

重启成功 现在我们可以使用连接工具连接了

保存退出 重启mysql服务

root@wdr:/opt/mysql# systemctl restart mysql

root@wdr:/opt/mysql#

重启成功 现在我们可以使用连接工具连接了

至此 mysql的安装已全部完成 如果有部署在云服务器上的经过上列操作无法访问的话 记得查看后台防火墙端口是否开启

相关链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: