前言:网上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的安装已全部完成 如果有部署在云服务器上的经过上列操作无法访问的话 记得查看后台防火墙端口是否开启
本文转载自: https://blog.csdn.net/qq_41265137/article/details/130644812
版权归原作者 qq_41265137 所有, 如有侵权,请联系我们删除。
版权归原作者 qq_41265137 所有, 如有侵权,请联系我们删除。