首页 > 数据库 >Linux安装MySQL

Linux安装MySQL

时间:2023-04-13 14:12:52浏览次数:49  
标签:develop 配置文件 安装 Linux usr mysql MySQL local

1、下载MySQL

  MySQL官网:https://downloads.mysql.com/archives/community/。下载Linux版本的MySQL安装包,这里我选择的是64位、8.0.31版本,下载的压缩包名称:mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz。

  

2、Linux安装MySQL

1、将下载的压缩包,上传到Linux的指定目录并解压

tar -xf mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz

   

   文件夹名称过长,文件夹重命名为mysql。

 

2、添加mysql用户及用户组

groupadd mysql && useradd -r -g mysql mysql

  查看mysql用户及用户组是否添加成功,有显示mysql:mysql代表成功。

 groups mysql 

3、创建mysql的数据目录并赋予权限

mkdir -p /usr/local/develop/data/mysql
chown mysql:mysql -R /usr/local/develop/data/mysql

4、调整配置文件

vi /etc/my.cnf

  如果没有就此配置文件,就新建配置配置文件my.cnf。配置文件调整如下:

bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/develop/mysql
datadir=/usr/local/develop/data/mysql
socket=/var/lib/mysql/mysql.sock
character_set_server=utf8mb4
explicit_defaults_for_timestamp=true
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]
# log-error=/var/log/mariadb/mariadb.log
# pid-file=/var/run/mariadb/mariadb.pid
log-error=/usr/local/develop/data/mysql/mysql-err.log
pid-file=/usr/local/develop/data/mysql/mysql.pid

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

  配置文件介绍如下:

  

5、初始化MySQL

  进入到mysql解压目录的bin下

cd /usr/local/develop/mysql/bin

  初始化mysql

./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/develop/mysql --datadir=/usr/local/develop/data/mysql/ --user=mysql --initialize

  执行初始化报错:error while loading shared libraries: libaio.so.1

      原因:缺少libaio.so.1的依赖库,需进行安装,执行如下安装命令:

 yum install -y libaio

  出现如下提示表示安装完成。

  

  再次执行mysql的初始化命令,出现如下提示代表初始化完成。

  

  注意:在初始化完成后,会为root生成临时的登录密码 - 如上图的 ==> A temporary password is generated for root@localhost: jKd)C,hu?6i9, 密码为 jKd)C,hu?6i9,需要记住后面登录时需要用到。

6、mysql的启动与关闭

6.1、启动msyql

  复制mysql的启动命令

cp /usr/local/develop/mysql/support-files/mysql.server /etc/init.d/mysql

  启动mysql

service mysql start

  执行出现如下错误: 

  

   调整配置文件,注释socket。

  

  再次启动mysql,出现如下提示,表示启动成功。

  

6.2、关闭mysql

  执行如下命令,关闭mysql服务。
service mysql stop

  关闭服务结果如下:

  

7、登录mysql

  此处需要用到上面初始化MySQL生成的临时密码:jKd)C,hu?6i9。

  MySQL服务已经启动,执行登录命令登录,发现无法找到mysql命令。因为Linux系统会在/usr/bin下面查找mysql命令,而当前的mysql命令在/usr/local/develop/mysql/bin目录下,所以执行mysql命令无法找到。 

  

  建立软连接

ln -s /usr/local/develop/mysql/bin/mysql /usr/bin

   再次访问mysql数据库,出现如下界面表示已登录成功。 

  

8、修改密码

  用临时密码登录到mysql数据库,无法访问数据库databases,需要先修改密码。

  执行如下命令修改密码:

alter user 'root'@'localhost' identified by 'root';
#刷新
FLUSH PRIVILEGES;

  出现如下提示表示密码修改完成。

  

9、数据库工具连接

  数据库工具连接Linux服务上的mysql,出现如下问题,外部不允许访问安装在Linux的数据库。

  

  调整mysql数据库中的user表的外部访问规则:

show databases;
# 选择使用mysql数据库
use mysql
# root可以由任何host访问
update user set host = '%' where user = 'root';
# 刷新权限
FLUSH PRIVILEGES;

  操作详情如下:

  

   再次连接数据库:

 

10、忘记密码

  如果忘记mysql的密码,需要开启免密登录

1、调整/etc/my.cnf配置文件

  在【mysqld】下添加 skip-grant-tables,保存退出。

skip-grant-tables

2、重启mysql服务,使数据生效

 service mysql restart

3、免密登录

mysql -u root -p

  修改密码按照步骤8操作,密码修改完成后,记得去掉/etc/my.cnf配置文件中的。

 

标签:develop,配置文件,安装,Linux,usr,mysql,MySQL,local
From: https://www.cnblogs.com/RunningSnails/p/17314488.html

相关文章

  • MySQL的锁机制
    锁概述锁是计算机协调多个进程或线程并发访问某一资源的机制。并发控制技术在数据库中,数据可以允许多个用户同时访问,因此在并发场景下需要确保数据的一致性,并发场景有三种:读-读:多用户并发读不会有问题读-写:可能出现脏读、幻读、不可重复读写-写:并发更新同一行会导致丢失更......
  • 对于为何设置mySql连接字符串为生么设置useSSL=false
    不建议在没有服务器身份验证的情况下建立SSL连接。根据MySQL5.5.45+、5.6.26+和5.7.6+的要求,如果不设置显式选项,则必须建立默认的SSL连接。需要通过设置useSSL=false来显式禁用SSL,或者设置useSSL=true并为服务器证书验证提供信任存储。所以建议设置useSSL为false,有时遇到的问题......
  • Centos上卸载MySQL8.0
    1、查看当前mysql安装状况rpm-qa|grepmysql#或yumlistinstall|grepmysql2、查看mysql的服务是否启动systemctlstatusmysqld2.1、如果启动则关闭mysql服务systemctlstopmysqld.service#service可加可不加#停止MySQL的服务[root@chenstudy~]\#......
  • how to use crontab to send an email on Linux All In One
    howtousecrontabtosendanemailonLinuxAllInOneemail/mailpi@raspberrypi:~/Desktop$mail--help-bash:mail:未找到命令pi@raspberrypi:~/Desktop$manmail没有mail的手册页条目installmail#❓$sudoapt-getmaildemos$crontab-e#每星......
  • linux下通过ODBC连接SqlServer
    环境操作系统:Centos7.9数据库:SqlServer2012所需安装包Linux系统的ODBCunixODBC-2.3.11(http://www.unixodbc.org)连接SQLServer或Sybase的驱动freetds-1.3.17(http://www.freetds.org/)安装步骤1、安装unixODBC#解压tarvxzfunixODBC-2.3.11.tar.gzcdun......
  • linux的桌面图标生成方式(windtrem图标)
    1.在桌面复制一个其他的桌面图标,蜜蜂这里就复制qq的[root@bee桌面]#cpqq.desktop ww.desktop2.修改文件[DesktopEntry]Name=QQExec=/usr/local/Windtrem/WindTerm_2.2.2/WindTermTerminal=falseType=ApplicationIcon=/usr/local/Windtrem/WindTerm_2.2.2/windterm.pngStartu......
  • Linux系统之源码编译部署Redis数据库
    (Linux系统之源码编译部署Redis数据库)一、Redis数据库介绍1.Redis简介Redis是完全开源的,遵守BSD协议,是一个高性能的key-value数据库。2.Redis特点Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。Redis不仅仅支持简单的key-va......
  • win10安装Redis5、配置自启动教程
    前提条件:首先我安装的是压缩包版的Redis5.0.14.1,下载链接为https://github.com/tporadowski/redis/releases安装教程下载软件并解压进入软件目录,修改redis.windows.conf,如下图所示:启动redis,进入windows命令行,cd到安装路径,然后如下图:本地命令行连接redis,使用redis-cli.......
  • mysql主从故障恢复
    之前遇到过一次Slave_SQL_Running:no的情况,解决方法请参考:https://www.cnblogs.com/sxFu/p/16022876.html而这次遇到的故障为:Slave_IO_Running:no一方面原因是因为网络通信的问题也有可能是日志读取错误的问题 再看错误信息可以判断为日志读取错误的问题 解决办法1、......
  • k8s1.27.x 最新版本使用kubeadm 的containerd的方式安装
    标签(空格分隔):kubernetes系列一:k8s1.27.x的概述1.1:k8s1.27.x更新Kubernetesv1.27正式发布,这是2023年的第一个版本!此版本包含60个增强功能。其中18个增强功能进入Alpha阶段,29个进入Beta阶段,13个进入Stable阶段。版本主题和标志Kubernetesv1.27:ChillVibes......