目录
更新系统包并安装 MySQL
运行安全初始化脚本
检查服务状态和基础操作
可能遇到的问题处理
首页 数据库 mysql教程 如何在Ubuntu上安装mysql

如何在Ubuntu上安装mysql

Jul 12, 2025 am 01:51 AM

安装 MySQL 在 Ubuntu 上的步骤包括:1. 更新系统包并安装 MySQL;2. 运行安全初始化脚本设置 root 密码、禁用远程登录等;3. 检查服务状态并进行基础操作;4. 处理可能遇到的权限和登录问题。首先更新软件包列表,执行 sudo apt update 和 sudo apt install mysql-server 安装 MySQL,然后通过 sudo mysql_secure_installation 配置安全选项,确保设置强密码并根据需求禁用远程访问。安装完成后使用 systemctl 命令管理服务状态,并通过 sudo mysql -u root -p 登录数据库。若出现连接或权限问题,应检查认证方式、密码是否正确,并可修改 root 用户的登录方式为密码验证。整个过程需特别注意安全配置以避免潜在风险。

how to install mysql on ubuntu

安装 MySQL 在 Ubuntu 上其实不难,只要按步骤来基本不会出问题。重点是选对版本、配置好权限,避免安全漏洞。

how to install mysql on ubuntu

更新系统包并安装 MySQL

在装 MySQL 前,最好先更新一下系统的软件包列表,这样能确保你装的是最新稳定版。
执行下面两条命令:

sudo apt update
sudo apt install mysql-server

安装过程中不会让你输入密码,所以装完之后要记得运行安全初始化脚本,不然默认配置太松了。

how to install mysql on ubuntu

运行安全初始化脚本

安装完后马上运行这个命令:

sudo mysql_secure_installation

它会让你设置 root 密码、移除匿名用户、禁止远程 root 登录等等。这一步非常关键,特别是如果你打算把数据库用在生产环境或者公网服务器上。

how to install mysql on ubuntu

有几个点要注意:

  • 设置强密码,别偷懒。
  • 如果你不打算远程访问数据库,就选“禁用远程登录”。
  • 删除测试数据库是个好习惯。

检查服务状态和基础操作

安装完成后,MySQL 会自动启动。你可以用这条命令检查状态:

sudo systemctl status mysql

如果没运行,可以用 start 启动它:

sudo systemctl start mysql

想让 MySQL 随系统开机自启的话,加一句:

sudo systemctl enable mysql

进数据库也简单,直接执行:

sudo mysql -u root -p

然后输入你刚才设的 root 密码就行。


可能遇到的问题处理

有时候你会发现连不上数据库,或者报错说权限不对。这时候可以看看这几个地方:

  • 是否设置了正确的 root 密码?
  • 是否用了错误的身份认证方式?比如新版 MySQL 默认用 auth_socket 插件,导致你不能用密码登录。
  • 日志文件 /var/log/mysql/error.log 里有没有异常信息?

如果你不想用 socket 登录,想改回密码登录,可以执行:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

然后重启下服务试试。


基本上就这些。整个过程不算复杂,但有些细节容易忽略,尤其是安全配置那部分,别图省事跳过。

以上是如何在Ubuntu上安装mysql的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

如何使用检查约束来在MySQL中执行数据规则? 如何使用检查约束来在MySQL中执行数据规则? Aug 06, 2025 pm 04:49 PM

MySQL支持CHECK约束以强制域完整性,自8.0.16版本起生效;1.创建表时添加约束:使用CREATETABLE定义CHECK条件,如年龄≥18、薪资>0、部门限定值;2.修改表添加约束:用ALTERTABLEADDCONSTRAINT限制字段值,如姓名非空;3.使用复杂条件:支持多列逻辑和表达式,如结束日期≥开始日期且完成状态需有结束日期;4.删除约束:通过ALTERTABLEDROPCONSTRAINT指定名称删除;5.注意事项:需MySQL8.0.16 、InnoDB或MyISAM引

如何在mySQL中使用cocecce()函数? 如何在mySQL中使用cocecce()函数? Aug 14, 2025 pm 06:15 PM

cocece()返回forthefirstnon-nullvaluefromalistofexpressions,启用gracefulhandlinglinglingofmissingdatabysubstitutingdefaults,MergingColumnValues,supportingCalcalculationSwithOptionalFields和Providing Fallbacksinjoinsandagggregregregations,Ensurnistrictabl

如何在MySQL中的现有表中添加主键? 如何在MySQL中的现有表中添加主键? Aug 12, 2025 am 04:11 AM

要为现有表添加主键,需使用ALTERTABLE语句配合ADDPRIMARYKEY子句。1.确保目标列无NULL值、无重复且定义为NOTNULL;2.单列主键语法为ALTERTABLE表名ADDPRIMARYKEY(列名);3.多列组合主键语法为ALTERTABLE表名ADDPRIMARYKEY(列1,列2);4.若列允许NULL,需先执行MODIFY设置为NOTNULL;5.每张表仅能有一个主键,添加前需删除旧主键;6.如需自增,可使用MODIFY设置AUTO_INCREMENT。操作前确保数据

如何在MySQL中显示所有数据库 如何在MySQL中显示所有数据库 Aug 08, 2025 am 09:50 AM

要显示MySQL中的所有数据库,需使用SHOWDATABASES命令;1.登录MySQL服务器后执行SHOWDATABASES;命令即可列出当前用户有权访问的所有数据库;2.系统数据库如information_schema、mysql、performance_schema和sys默认存在,但权限不足的用户可能无法看到;3.也可通过SELECTSCHEMA_NAMEFROMinformation_schema.SCHEMATA;查询并筛选数据库,例如排除系统数据库以仅显示用户创建的数据库;确保使用

如何故障排除常见的mySQL连接错误? 如何故障排除常见的mySQL连接错误? Aug 08, 2025 am 06:44 AM

检查MySQL服务是否运行,使用sudosystemctlstatusmysql确认并启动;2.确保bind-address设置为0.0.0.0以允许远程连接,并重启服务;3.验证3306端口是否开放,通过netstat检查并配置防火墙规则允许该端口;4.对于“Accessdenied”错误,需核对用户名、密码和主机名,登录MySQL后查询mysql.user表确认权限,必要时创建或更新用户并授权,如使用'your_user'@'%';5.若因caching_sha2_password导致认证失

如何在MySQL中备份数据库 如何在MySQL中备份数据库 Aug 11, 2025 am 10:40 AM

使用mysqldump是备份MySQL数据库最常用且有效的方法,它能生成包含表结构和数据的SQL脚本。1.基本语法为:mysqldump-u[用户名]-p[数据库名]>backup_file.sql,执行后输入密码即可生成备份文件。2.备份多个数据库使用--databases选项:mysqldump-uroot-p--databasesdb1db2>multiple_dbs_backup.sql。3.备份所有数据库使用--all-databases:mysqldump-uroot-p

如何更改mySQL中的group_concat分离器 如何更改mySQL中的group_concat分离器 Aug 22, 2025 am 10:58 AM

可以通过在GROUP_CONCAT()函数中使用SEPARATOR关键字来自定义分隔符;1.使用SEPARATOR指定自定义分隔符,如SEPARATOR';'可将分隔符改为分号加空格;2.常见示例包括使用管道符'|'、空格''、换行符'\n'或自定义字符串'->'作为分隔符;3.注意分隔符必须为字符串字面量或表达式,且结果长度受group_concat_max_len变量限制,可通过SETSESSIONgroup_concat_max_len=10000;调整;4.SEPARATOR为可选

在MySQL中,联盟和联盟之间有什么区别? 在MySQL中,联盟和联盟之间有什么区别? Aug 14, 2025 pm 05:25 PM

UNIONremovesduplicateswhileUNIONALLkeepsallrowsincludingduplicates;1.UNIONperformsdeduplicationbysortingandcomparingrows,returningonlyuniqueresults,whichmakesitsloweronlargedatasets;2.UNIONALLincludeseveryrowfromeachquerywithoutcheckingforduplicates,

See all articles