Ubuntu安装配置MySQL(远程登录)

Ubuntu安装配置MySQL

好多命令每次都忘,还要在网上查,在这里留一份,方便自己日后查看

步骤 1: 更新软件包列表

首先,打开终端并更新你的软件包列表,确保你拥有最新的软件包信息:

shellscript 复制代码
sudo apt update

步骤 2: 安装 MySQL 服务器

使用以下命令来安装 MySQL 服务器:

shellscript 复制代码
sudo apt install mysql-server

系统可能会提示你输入密码来确认操作权限。安装过程中,MySQL 不会要求你设置 root 用户的密码,但是安装完成后,你需要手动配置安全选项。

步骤 3: 配置 MySQL 安全性

运行 MySQL 自带的安全脚本来提高数据库的安全性。这个脚本将帮助你移除一些默认账户,更改验证方法,以及设置 root 密码等。

shellscript 复制代码
sudo mysql_secure_installation

程序会问你是否要设置 VALIDATE PASSWORD 组件,这可以让你为 MySQL 用户设置密码策略。根据需要选择是或否,然后继续设置 root 用户的密码,并完成其他安全性相关的设置。

步骤 4: 启动和启用 MySQL 服务

通常情况下,MySQL 在安装后会自动启动。你可以检查 MySQL 服务的状态,确保它正在运行:

shellscript 复制代码
sudo systemctl status mysql.service

如果 MySQL 没有运行,你可以用下面的命令来启动它:

shellscript 复制代码
sudo systemctl start mysql.service

为了确保 MySQL 在系统重启后能够自动启动,你可以运行:

shellscript 复制代码
sudo systemctl enable mysql.service

步骤 5: 登录到 MySQL

安装并配置好 MySQL 之后,你可以使用 root 用户登录到 MySQL 控制台:

shellscript 复制代码
sudo mysql -u root -p

然后输入你在mysql_secure_installation过程中设置的 root 密码。

步骤 6: 创建新用户

出于安全考虑,建议不要总是使用 root 用户来管理数据库。你可以创建一个新的用户,并给它分配适当的权限:

sql 复制代码
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;

创建远程登录使用的账户

sql 复制代码
CREATE USER 'newuser2'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'newuser2'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

步骤 7:配置MySQL,开启远程登录

shellscript 复制代码
vim /etc/mysql/mysql.conf.d/mysqld.cnf

修改mysqld.cnf文件

Plain 复制代码
user            = mysql
# pid-file      = /var/run/mysqld/mysqld.pid
# socket        = /var/run/mysqld/mysqld.sock
# port          = 3306
# datadir       = /var/lib/mysql


# If MySQL is running as a replication slave, this should be
# changed. Ref https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_tmpdir
# tmpdir                = /tmp
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address            = 0.0.0.0  (修改此处,把原来"127.0.0.1", 改成"0.0.0.0")
mysqlx-bind-address     = 127.0.0.1
shellscript 复制代码
# 重启MySQL服务
systemctl restart mysql

远程登录(局域网)

shellscript 复制代码
mysql -h 192.168.1.100 -uroot -p'password'
相关推荐
AllData公司负责人42 分钟前
数据同步平台|AIIData数据中台实现MySQL、Hive、Kafka 一键接入Doris
大数据·数据库·hive·mysql·kafka·实时同步
数据库小学妹43 分钟前
MySQL安全加固全流程:网络隔离、TDE加密、数据脱敏、等保合规7步实战
mysql·安全·数据脱敏·审计日志·安全加固·等保合规
筱羽_筱羽1 小时前
跟着“Ubuntu18.04/20.04编译Linux5.10.76+Xenomai-3.2.1+IgH”教程遇到的问题
linux·运维·ubuntu
ShineWinsu2 小时前
对于Linux:基于UDP实现简单聊天室功能
linux·c++·面试·udp·笔试·进程·简单聊天室
SQL-First布道者2 小时前
Spring JDBC Ultra 十边型战士
java·spring boot·后端·mysql·spring·mybatis
zoipuus3 小时前
上传repo仓库到自己的gitlab
linux·gitlab·shell·全志·tina
IT大白鼠3 小时前
CVE-2026-7531 Azure Linux MariaDB PQC 内存破坏漏洞详解
linux·mariadb·azure·cve-2026-7531
—Miss. Z—3 小时前
计算机二级MySQL选择题考点Ⅱ
数据库·mysql·oracle
无忧.芙桃3 小时前
线程同步与线程互斥(上)
linux·运维·操作系统·运维开发
翔云1234563 小时前
MySQL 中 CURRENT_TIMESTAMP 到底取的是 INSERT 时间,还是 COMMIT 时间?
数据库·mysql