备案 控制台
开发者社区 数据库 文章 正文

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

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
推荐场景:
学生管理系统数据库设计 搭建个人博客
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 在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 数据库名;


相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
守望时空33
目录
相关文章
jianz123
|
4天前
|
SQL 关系型数据库 MySQL
MySQL服务器性能调优的顶级策略14
【7月更文挑战第14天】MySQL服务器性能调优的顶级策略
jianz123
24 12
zcl19901222
|
1天前
|
Oracle 关系型数据库 MySQL
linux安装及卸载mysql
在Linux上安装MySQL客户端涉及添加RPM源,运行`yum install mysql-community-client.x86_64 -y`。忘记密码时,编辑`/etc/my.cnf`,添加`skip-grant-tables`,重启MySQL,然后登录修改密码。卸载MySQL需停服,用`rpm -ev`逐个卸载相关组件,删除文件夹,并验证是否卸载干净。重新安装客户端可使用`rpm -ivh`命令。
zcl19901222
32 8
Linux学习的那些事儿
|
3天前
|
存储 运维 Linux
Linux磁盘精准缩容:操作详解与技巧
在Linux系统管理中,有效的磁盘空间优化对于维护系统性能至关重要。本文将深入探讨如何在Linux环境下安全地进行磁盘缩容,帮助你合理调整存储资源,确保系统高效运行。跟随本篇的步骤,一起优化你的Linux系统磁盘空间!
Linux学习的那些事儿
29 3
yqd666
|
15天前
|
XML Java 应用服务中间件
Tomcat服务器的简介以及安装
Tomcat服务器的简介以及安装
yqd666
31 3
爱你三千遍斯塔克
|
15天前
|
关系型数据库 MySQL Java
软件开发2003 -Can·t to MySQL server on ‘xxxxxx‘(10038),宝塔初始化安装mysql,远程链接MySql注意事项,开始时服务器是没有放开端口的,宝塔也都开
软件开发2003 -Can·t to MySQL server on ‘xxxxxx‘(10038),宝塔初始化安装mysql,远程链接MySql注意事项,开始时服务器是没有放开端口的,宝塔也都开
爱你三千遍斯塔克
18 0
爱你三千遍斯塔克
|
15天前
|
关系型数据库 MySQL Linux
Linux部署实战前言,MySQL在CentOS安装【单机软件】,MySQL的安装需要root权限,yum install mysql,systemctl enable mysqld开机自启的意思
Linux部署实战前言,MySQL在CentOS安装【单机软件】,MySQL的安装需要root权限,yum install mysql,systemctl enable mysqld开机自启的意思
爱你三千遍斯塔克
40 0
爱你三千遍斯塔克
|
15天前
|
运维
软件开发常见流程之下载安装宝塔,一台服务器安装一次,多台就重复这个步骤
软件开发常见流程之下载安装宝塔,一台服务器安装一次,多台就重复这个步骤
爱你三千遍斯塔克
20 0
爱你三千遍斯塔克
|
17天前
|
负载均衡 Java Linux
黑马头条01,环境搭建,今日头条的介绍,今日头条的功能架构图,技术栈的说明,服务层,nacos(奶靠丝)安装,安装在Linux服务器上环境准备,
黑马头条01,环境搭建,今日头条的介绍,今日头条的功能架构图,技术栈的说明,服务层,nacos(奶靠丝)安装,安装在Linux服务器上环境准备,
爱你三千遍斯塔克
22 0
1100237741946300
|
15天前
|
存储 关系型数据库 MySQL
探索MySQL:关系型数据库的基石
MySQL,作为全球最流行的开源关系型数据库管理系统(RDBMS)之一,广泛应用于各种Web应用、企业级应用和数据仓库中
1100237741946300
475 0
青云190815
|
12天前
|
关系型数据库 MySQL 网络安全
Mysql 数据库主从复制
在MySQL主从复制环境中,配置了两台虚拟机:主VM拥有IP1,从VM有IP2。主VM的`my.cnf`设置server-id为1,启用二进制日志;从VM设置server-id为2,开启GTID模式。通过`find`命令查找配置文件,编辑`my.cnf`,在主服务器上创建复制用户,记录二进制日志信息,然后锁定表并备份数据。备份文件通过SCP传输到从服务器,恢复数据并配置复制源,启动复制。检查复制状态确认运行正常。最后解锁表,完成主从同步,新用户在从库中自动更新。
青云190815
984 6
Mysql 数据库主从复制

热门文章

最新文章

  • 1
    linux下生成openssl证书
  • 2
    linux删除之前的文件日志
  • 3
    Linux命令晋级
  • 4
    linux发行版与eclipse插件
  • 5
    Linux后台运行
  • 6
    Linux grep :文本查找与正则
  • 7
    每天五分钟linux(7)-mv
  • 8
    Linux进程间通信——使用流套接字
  • 9
    Linux下的Backlight子系统(二)【转】
  • 10
    每天五分钟linux(6)-rmdir
  • 1
    vue3 + fastapi 实现选择目录所有文件自定义上传到服务器
    102
  • 2
    Linux服务器如何查询连接服务器的IP
    58
  • 3
    如何将一个linux服务器挂载到另外一个linux服务器上
    58
  • 4
    阿里云学生云服务器申请,阿里云送每个大学生一台云服务器
    930
  • 5
    React的服务器端渲染:使用ReactDOMServer进行高效页面预渲染
    102
  • 6
    服务器部署访问出错的原因和解决办法
    67
  • 7
    服务器通信:使用WebSocket与后端实时交互
    137
  • 8
    Linux系统之安装ServerBee服务器监控工具
    90
  • 9
    【超详细!超多图!】【代码管理】Python微信公众号开发(3)- 服务器代码上传Github
    93
  • 10
    OpenStack私有云裸机物理服务器角色规划
    50
  • 相关课程

    更多
  • MySQL企业常见架构与调优经验分享
  • 云数据库MySQL版快速上手教程
  • 阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
  • MySQL实战进阶
  • 数据库及SQL/MySQL基础
  • 云数据库MySQL快速入门
  • 相关电子书

    更多
  • One Box: 解读事务与分析一体化数据库 HybridDB for MySQL
  • One Box:解读事务与分析一体化数据库HybridDB for MySQL
  • 如何支撑HTAP场景-HybridDB for MySQL系统架构和技术演进
  • 相关实验场景

    更多
  • MySQL基础-学生管理系统数据库设计
  • 如何快速连接云数据库RDS MySQL
  • MySQL数据库快速部署实践
  • MyBase MySQL实例资源灵活弹配
  • RDS MySQL大促场景下的智能化弹性
  • 如何开通MySQL的专属集群
  • 推荐镜像

    更多
  • artixlinux-iso
  • artixlinux
  • archlinuxarm
  • 下一篇
    2024年阿里云免费云服务器及学生三百通用额度申请教程参考

    PHP网站源码大浪百度标王大鹏阿里店铺运营福永网页设计龙华至尊标王布吉百姓网标王推广大运关键词排名平湖企业网站制作民治网络广告推广西乡阿里店铺托管龙华建站横岗网站改版丹竹头百度关键词包年推广广州seo网站优化龙岗关键词按天扣费布吉企业网站建设南澳seo网站推广盐田网站关键词优化布吉网站制作设计广州SEO按天扣费观澜网站改版坪地百度网站优化排名大芬高端网站设计宝安营销网站南联营销型网站建设布吉品牌网站设计永湖网页设计坑梓阿里店铺运营塘坑优秀网站设计吉祥如何制作网站双龙模板网站建设歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

    PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化