首页 > 数据库 >Ubuntu搭建MySQL服务器

Ubuntu搭建MySQL服务器

时间:2023-04-28 17:01:17浏览次数:46  
标签:Ubuntu 用户 密码 mysql MySQL 服务器 root

Ubuntu安装MySQL

使用apt命令安装”sudo apt-get install mysql-server


使用 mysqladmin 命令检查服务器的版本
mysqladmin --version

登录MySQL服务器(记录密码:17909)
mysql -u root -p

( '\h' for help. Type '\c' to clear the current input statement.)


Linux系统启动时启动 MySQL
如果你需要在Linux系统启动时启动 MySQL 服务器,你需要在 /etc/rc.local 文件中添加以下命令:
/etc/init.d/mysqld start
(如提示readonly,使用sudo命令执行vim,sudo vim rc.local )

检查MySQL服务器是否启动:
ps -ef | grep mysqld

关闭MySQL服务器:
cd /usr/bin(进入对应目录)
./mysqladmin -u root -p shutdown

启动MySQL服务器:
1.使用 service 启动MySQL:
service mysql start

 


2.使用 mysqld 脚本启动:
cd /etc/init.d
./mysql start (注意脚本使用提示Usage: /etc/init.d/mysql start|stop|restart|reload|force-reload|status)

重启MySQL:
1.使用 service 启动:service mysql restart

(重启服务sudo systemctl restart mysql.service
2.使用 mysqld 脚本启动:
cd /etc/inint.d
./mysql restart


#*********************************************************

以下是没头脑的小菜鸟为了解决远程连接不上做的一些操作

#*********************************************************
MySQL 服务器远程连接不上的原因有多种可能,需要系统地进行检查与修复:
1. 确认 MySQL 服务已启动
使用 systemctl status mysql.service 检查 MySQL 服务当前状态,如果未启动需执行 systemctl start mysql.service 启动服务。
2. 检查网络连接
确认 MySQL 服务器与远程客户端网络连通,服务器防火墙已开放 3306 端口,并允许远程 IP 访问。
3. 查看 MySQL 错误日志
执行 journalctl -u mysql.service 或查看 /var/log/mysqld.log 日志文件,检查是否有拒绝连接相关错误信息。

4. 检查用户权限
no17909@ubuntu:/etc/mysql/conf.d$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 5.7.33-0ubuntu0.16.04.1 (Ubuntu)

Copyright (c) 2000, 2021, 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> select user,host from mysql.user;
+------------------+-----------+
| user | host |
+------------------+-----------+
| debian-sys-maint | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+------------------+-----------+
4 rows in set (0.07 sec)

这里的 localhost 表示只允许本地连接;
执行以下 SQL 命令,将 root 用户的 host 从localhost 修改为 %,表示可以从任意主机连接:
UPDATE mysql.user SET host = '%' WHERE user = 'root' AND host = 'localhost';
    #--------------------------------------------------------
    要将 root 用户的 host 从localhost 设置为可以远程连接,需要执行以下步骤:
    1. 登录 MySQL 服务器
    以 root 用户本地登录 MySQL:
    在bash中输入
    mysql -u root -p
    输入 root 用户密码登录。
    2. 修改 root 用户主机
    执行以下 SQL 命令,将 root 用户的 host 从localhost 修改为 %,表示可以从任意主机连接:
    在sql服务器中输入
    UPDATE mysql.user SET host = '%' WHERE user = 'root' AND host = 'localhost';
    3. 刷新权限
    执行 FLUSH PRIVILEGES; 命令,使权限修改生效。
    4. 退出 MySQL
    执行 exit 或 quit 命令退出 MySQL。
    5. 重启 MySQL 服务
    执行 sudo systemctl restart mysql.service 命令重启 MySQL 服务,使配置生效。
    . 测试远程连接
    在远程主机使用 MySQL 客户端工具测试是否可以以 root 用户连接 MySQL 服务器。
    #--------------------------------------------------------

 

5. 确认 my.cnf 配置
检查 MySQL 配置文件 /etc/mysql/my.cnf ,确认是否设置了 bind-address=0.0.0.0 选项以允许所有 IP 访问。
如果未设置,添加并重启 MySQL:
在bash中如输入
sudo nano /etc/mysql/my.cnf

# 添加以下内容
[mysqld]
bind-address=0.0.0.0

sudo systemctl restart mysql.service


6. 检查 SELinux 限制
在 CentOS/RHEL 设置 setsebool -P mysqld_tcp_bind=1 以开放 MySQL 远程连接。
7. 确认 MySQL 版本支持
较早的 MySQL 版本不支持远程连接,升级到较新版本(5.7+)以支持远程连接。

#**********************************************************************


连接上以后创建新数据库(比如1122334455)
create DATABASE 1122334455

 

#*********************************************************

以下是维护用户密码的方法

#*********************************************************

在MySQL服务器上,可以通过以下步骤配置用户密码:1. 登录MySQL服务器以root用户登录:
bash
mysql -u root -p
输入root用户密码,登录成功后进入MySQL命令行。2. 修改指定用户密码执行以下SQL命令,修改test用户的密码为newpassword:
sql
SET PASSWORD FOR 'test'@'%' = PASSWORD('newpassword');
如果test用户的host不是%,需要替换为对应的主机名。3. 授予用户密码修改权限  如果当前用户无权修改test用户密码,需要先向其授权。执行:
sql 
GRANT ALTER ON *.* TO '你的用户名'@'%';
然后刷新权限:
sql
FLUSH PRIVILEGES; 
4. 退出MySQL执行`quit`或`exit`命令退出MySQL。 5. 测试新密码使用MySQL客户端或其他工具以test用户登录MySQL服务器,输入newpassword作为密码,如果可以成功登录,密码修改成功。 需要注意的几点: 1. MySQL的密码采用加密存储,修改后无法看到明文密码。 2. 不同版本的MySQL,密码加密方法可能不同,修改密码后,低版本的MySQL可能无法登录。 3. 授权时,要根据用户实际需要授予密码修改权限,不能过于开放。 4. 修改密码后要立即测试,确保可以正常使用新密码登录。 5. MySQL root用户拥有最高权限,其密码设置要格外注意,避免泄露。 

#*********************************************************

参考链接

https://www.w3cschool.cn/mysql/mysql-2i4k2owh.html

https://www.runoob.com/mysql/mysql-union-operation.html

#*********************************************************

标签:Ubuntu,用户,密码,mysql,MySQL,服务器,root
From: https://www.cnblogs.com/babashi9527/p/17362640.html

相关文章

  • Mysql数据库设计和事务
    一对一在任意一方建立外键,关联另一方主键一对多在多的一方建立外键关联另一方的主键多对多1.建立中间表2.中间表至少包含2个外键,分别关联双方主键内连接1.隐式连接select*fromemp,deptwhereemp.dep_id=dept.did   2.显式连接select*fromemp(inner)joindep......
  • mysql创建索引三种方式
    1.新建表中添加索引①普通索引createtablet_dept(nointnotnullprimarykey,namevarchar(20)null,sexvarchar(2)null,infovarchar(20)null,indexindex_no(no))②唯一索引createtablet_dept(nointnotnullprimarykey,......
  • paramiko遍历嵌套文件夹上传到linux服务器,并执行sh脚本
    场景:由于工作原因,开发打包后都要上传包到对应linux服务器,并执行对应shell脚本,替换包内配置文件,启动服务。换包频率过于频繁,因此需要实现一种不用打开xshell、xftp的方法,直接将包放在本地文件,双击exe运行所有操作,以节省时间,想到使用python的paramiko、pyinstaller模块实现。功......
  • ubuntu core
    /etc/default/apport---->1/etc/sysctl.conf<<kernel.core_pattern=/coredump/core-%e-%p-%t/sbin/sysctl-p查看路径/proc/sys/kernel/core_pattern ......
  • 灾难处理:卸载无法开机(蓝屏)的exchange服务器
    目的:卸载无法开机(蓝屏)的exchange服务器,从AD层面删除图形化界面卸载: 确保exchange03上没有任何的数据库命令行的模式下进行卸载: ......
  • 解决 VMware 虚拟机 Linux /dev/mapper/ubuntu--vg-ubuntu--lv 磁盘空间不足的问题
    之前在VMware安装UbuntuServer的时候磁盘分区选择了LVM,所以系统根目录默认占用磁盘大小只有4G,在安装软件时发现磁盘空间4G已经无法满足,所以需要利用LVM对磁盘进行扩容使用Docker拉取MySQL镜像时发现磁盘空间不够:nospaceleftondeviceroot@ubuntu:~#......
  • Python: MySQL
     Pool   使用pool正确方法:从pool取connection,使用完close(),底层CMySQLConnection会return到deque,此时从pool中得到的PooledMySQLConnection底层_cnx变为None ......
  • Linux基础17 运维核心职责与工作内容, 服务器介绍, 硬件介绍, 系统介绍, 机房介绍
    运维的核心职责1.数据不丢失。 2.业务7*24小时运行(不宕机) 3.提升用户体验度(性能的优化)2.运维的平时工作内容 1.日常服务器的维护,紧急故障的处理。 2.代码上线,gitlab+Jenkins。shell脚本。 3.项目:备份、迁移、升级。rsync 4.日常服务器监控,zabbix 5.梳理总结文档。画图。 6.领......
  • Ubuntu (Linux) 上查看 HEIC 格式的图片 / 显示缩略图
    Ubuntu20.04上查看HEIC格式的图片,仅需要安装一个heif-gdk-pixbuf的package,然后就可以使用ImageViewer查看了.如果还需要在文件管理器中显示缩略图,那么还需要安装其它2个包(亲测OK):sudoaptupdatesudoaptinstallheif-gdk-pixbufsudoaptinstallheif-thumbnailer......
  • Ubuntu 22.04 SSH the RSA key isn't working since upgrading from 20.04
    Ubuntu22.04SSHtheRSAkeyisn'tworkingsinceupgradingfrom20.04UpuntillastweekIwasrunningUbuntu20.04happily,andthenovertheweekenddecidedtobackeverythingupandinstall22.04.I'vehadacoupleofteethingissueswhichI&#......