在Linux服务器上安装MySQL并配置,远程连接,以及MySQL的一些常规操作

本文涉及的产品
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
简介: 在Linux服务器上安装MySQL并配置,远程连接,以及MySQL的一些常规操作

MySQL是用的很多的关系型数据库。今天来分享一下安装,配置及其连接教程。这里以Debian服务器安装MySQL 8为例。

1,下载MySQL并解压上传

下载页面下载linux版的mysql安装包。

网络异常,图片无法展示
|

注意安装之前必须完全卸载MariaDB,先执行:

sudo apt purge mariadb*

然后下载了一个tar文件,解压你会发现解压出来了一堆deb文件,把这些文件全部上传到linux服务器的一个目录里,并cd命令进入那个目录,然后安装所有的deb文件:

sudo dpkg -i *.deb

若安装后有错误信息,则执行:

sudo apt update
sudo apt install -f

期间会显示一个界面让你设置root密码,即数据库超级管理员root的密码,设置即可:

网络异常,图片无法展示
|

输入密码,ok,然后重复输入密码确认之后会告知你mysql8用了新加密方式,ok即可:

网络异常,图片无法展示
|

然后会让你选择加密方式,有新加密方式和传统加密方式两种。这里需要说明的是如果选择新加密方式可能远程连接数据库时会报错,所以没特殊需要建议选择传统加密方式:

网络异常,图片无法展示
|

这样就安装完成了!

2,修改配置文件

其实通常情况下配置文件不需要修改,不过有特殊需要的话就建议修改一下。

mysql 8的配置文件路径是/etc/mysql/my.cnf

不过我们一般只需修改服务端的配置即可。服务端配置需要修改/etc/mysql/mysql.conf.d/mysqld.cnf文件,打开这个文件可以看到:

# Copyright (c) 2014, 2017, Oracle and/or its affiliates. All rights reserved.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License, version 2.0,
# as published by the Free Software Foundation.
#
# This program is also distributed with certain software (including
# but not limited to OpenSSL) that is licensed under separate terms,
# as designated in a particular file or component or in included license
# documentation.  The authors of MySQL hereby grant you an additional
# permission to link the program and your derivative works with the
# separately licensed software that they have included with MySQL.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License, version 2.0, for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
#
# The MySQL  Server configuration file.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html
[mysqld]
pid-file  = /var/run/mysqld/mysqld.pid
socket    = /var/run/mysqld/mysqld.sock
datadir   = /var/lib/mysql
log-error = /var/log/mysql/error.log

里面设定了一些默认的数据库文件、日志文件位置,可自行修改。

上面[mysqld]表示一个配置组,即为服务端配置,这个配置组下面的四行配置依次代表:进程文件位置、socket文件位置、数据库存放文件夹和错误日志文件位置。

下面来说几个常用配置。

(1) MySQL端口

服务端的默认端口是3306,不过在这个文件这可以添加配置修改其端口,接着加入下列语句(在[mysqld]配置组):

port=自定义端口号

(2) 字符集

然后就是字符集,建议改成utf8mb4,现在上面服务端配置组[mysqld]里面加入:

character-set-server=utf8mb4

再修改/etc/mysql/my.cnf这个配置文件,加入[client]配置组(如果没有的话)并设置字符集,添加如下语句:

[client]
default-character-set=utf8mb4

(3) 解决连接MySQL非常慢的问题

如果说安装了MySQL,然后通过命令行或者Navicat远程连接的时候,都要等少好多秒才能连接上,连接的非常慢的话,可以关闭其域名解析功能。

编辑/etc/mysql/mysql.conf.d/mysqld.cnf文件,在[mysqld]配置组下加入如下一行配置即可:

skip-name-resolve

修改完成配置后记得重启mysql服务(见下面3)。

3,启动数据库服务

通过这个目录启动:

service mysql start

还可以停止或者重启:

停止:

service mysql stop

重启(修改完配置文件重启生效):

service mysql restart

安装完成,MySQL的服务端是默认开机自启动的,我们可以通过下列命令打开/关闭MySQL的开机自启动:

允许开机自启:

systemctl enable mysql

禁用开机自启:

systemctl disable mysql

4,设置外网可以连接数据库

在服务器上面输入命令连接数据库:

mysql -u root -p

然后输入管理员密码,就连接成功了。

然后依次执行下列命令:

use mysql;update user set host='%'where user='root';flush privileges;

就设置成功了。

5,Windows上连接MySQL

我们在自己的电脑上也要安装MySQL,这个从官网下载Windows MySQL即可。安装配置方法很简单,百度即可,这里不再赘述。(一般是解压,然后把其中bin文件夹所在文件添加至Path环境变量)

配置好后打开cmd,输入命令:

mysql -h 服务器地址 -P 端口(服务端使用默认端口3306可以不要这个-P选项) -u 数据库用户名 -p

接着要输入密码,然后就可以了。

6,MySQL数据库常规操作

登录数据库后,我们要进行添加用户、数据库等操作。

(1)添加用户

create user '用户名'@'可接受连接的主机的ip' identified by'用户密码';

下面给出几个例子:

创建用户a密码为123456a只能从本机登录(主机字段为localhost):

create user 'a'@'localhost' identified by'123456';

创建用户b密码为123456,b可以从外网任何主机远程登录(主机字段为%):

create user 'b'@'%' identified by'123456';

然后授权用户:

grant 权限 on 授权可操作的数据库.授权可操作的表名 to '被授权用户'@'可操作的主机ip';

其中权限字段有SELECT, INSERT, UPDATE等,若授予所有权限则这里填ALL

例如给b授予操作所有数据库的所有表的全部权限:

grant ALL on*.* to 'b'@'%';

需要注意的是,用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用如下的命令:

grant 权限 on 授权可操作的数据库.授权可操作的表名 to '用户名'@'可操作主机' with grant option;

(2)修改用户密码

在MySQL8中,使用alter语句修改密码。先登录,然后执行以下语句:

alter user '用户名'@'授权的登录地址' identified by'新密码';

注意登录root或者任何高权限账户可以修改自己以及其他用户密码,而普通账户登录只能修改自己的密码。授权的登录地址值即为创建账户的时候设定的值(仅本机访问是localhost,全部可以访问是%)。

(3)新建数据库

create database 数据库名;

若要指定新建数据库的编码和排序字符集,则使用:

create database 数据库名 character set 编码 collate 排序字符集;

例如:

create database test character set utf8mb4 collate utf8mb4_unicode_ci;

最后切换至数据库:

use 数据库名;


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
8月前
|
弹性计算 定位技术 数据中心
阿里云服务器配置选择方法:付费类型、地域及CPU内存配置全解析
阿里云服务器怎么选?2025最新指南:就近选择地域,降低延迟;长期使用选包年包月,短期灵活选按量付费;企业选2核4G5M仅199元/年,个人选2核2G3M低至99元/年,高性价比爆款推荐,轻松上云。
980 11
|
8月前
|
存储 弹性计算 监控
阿里云渠道商:如何挑选阿里云服务器配置?
本文详解通用型、计算型、内存型等实例适用场景,结合性能评估与成本优化策略,助力用户按需选择。以日均1万访问企业网站为例,2核4G+3M带宽月费约200元,性价比高。合理配置更省钱。
|
9月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
991 1
二、Linux文本处理与文件操作核心命令
|
9月前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
605 137
|
9月前
|
安全 Ubuntu Unix
一、初识 Linux 与基本命令
玩转Linux命令行,就像探索一座新城市。首先要熟悉它的“地图”,也就是/根目录下/etc(放配置)、/home(住家)这些核心区域。然后掌握几个“生存口令”:用ls看周围,cd去别处,mkdir建新房,cp/mv搬东西,再用cat或tail看文件内容。最后,别忘了随时按Tab键,它能帮你自动补全命令和路径,是提高效率的第一神器。
1551 58
|
JSON 自然语言处理 Linux
linux命令—tree
tree是一款强大的Linux命令行工具,用于以树状结构递归展示目录和文件,直观呈现层级关系。支持多种功能,如过滤、排序、权限显示及格式化输出等。安装方法因系统而异常用场景包括:基础用法(显示当前或指定目录结构)、核心参数应用(如层级控制-L、隐藏文件显示-a、完整路径输出-f)以及进阶操作(如磁盘空间分析--du、结合grep过滤内容、生成JSON格式列表-J等)。此外,还可生成网站目录结构图并导出为HTML文件。注意事项:使用Tab键补全路径避免错误;超大目录建议限制遍历层数;脚本中推荐禁用统计信息以优化性能。更多详情可查阅手册mantree。
1109 143
linux命令—tree
|
8月前
|
存储 安全 Linux
Linux卡在emergency mode怎么办?xfs_repair 命令轻松解决
Linux虚拟机遇紧急模式?别慌!多因磁盘挂载失败。本文教你通过日志定位问题,用`xfs_repair`等工具修复文件系统,三步快速恢复。掌握查日志、修磁盘、验重启,轻松应对紧急模式,保障系统稳定运行。
1413 2
|
9月前
|
Unix Linux 程序员
Linux文本搜索工具grep命令使用指南
以上就是对Linux环境下强大工具 `grep` 的基础到进阶功能介绍。它不仅能够执行简单文字查询任务还能够处理复杂文字处理任务,并且支持强大而灵活地正则表达规范来增加查询精度与效率。无论您是程序员、数据分析师还是系统管理员,在日常工作中熟练运用该命令都将极大提升您处理和分析数据效率。
774 16