linux上安装MySQL

这篇具有很好参考价值的文章主要介绍了linux上安装MySQL。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、前期准备

二、安装MySQL

三、遇到的问题

在删除linux自带的mysql时,yum remove  mysql-ql-libs.x86_64 出错,提示“无法解析主机”

 2.  mysqld --user=mysql --basedir=/home/mysql5.7 --datadir=/home/mysql5.7/data --initialize  #在初始化mysql是出错:

3. 解决磁盘空间不足之后,在初始化mysql的时,又遇到了问题,提示Can't create/write to file '/home/mysql5.7/data/is_writable' 。


一、前期准备

   1. mysql下载

http://链接:https://pan.baidu.com/s/11Ti3G9XaiBCUETkdOFyIOA?pwd=5b14

提取码:5b14

  2.  将mysql5.7的jar包上传到linux的root用户下的/home目录下 

  3.  检查是否安装了MySQL

yum list installed | grep mysql

linux上安装MySQL

   4. 卸载之前的MySQL(如果没有,则不用执行这一步  )

 yum  remove  mysql-lib.x86_64    #这里的mysql-lib.x86_64是上图对应的序号1

linux上安装MySQL

  5.  删除之后再从新查看一下还有没有mysql

linux上安装MySQL

二、安装MySQL

  1. 解压mysql安装包
cd /home	   #进入到存放mysql压缩包的目录
tar -zxvf  mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz   #解压

linux上安装MySQL

2.  重命名 (因为名字太长了,为了方便,把解压之后的mysql目录重新命名) 

mv mysql-5.7.37-linux-glibc2.12-x86_64  mysql5.7  

3.  在mysql目录下面创建data目录

mkdir /home/mysql5.7/data 

  #创建好之后我们在mysql5.7目录内ll就可以看到创建好的data目录了

linux上安装MySQL

 4. 创建mysql的用户组和用户,并且给mysql5.7目录设置用户组和用户

注:注意这儿的.必须要,否则会报错。

cd /home
groupadd mysql
useradd mysql -g mysql
cd mysql5.7
chown -R mysql . 
chgrp -R mysql . 

 5. 配置my.cnf文件  vim /etc/my.cnf ,添加内容

[mysqld]
 basedir=/home/mysql5.7
 datadir=/home/mysql5.7/data
 port=3306
 [client]
 default-character-set=utf8
 [mysql]
 default-character-set=utf8

linux上安装MySQL

 6. 修改/etc/selinux/config文件配置,然后重启服务器

vi /etc/selinux/config
把SELINUX=enforcing改为SELINUX=disabled,保存退出,然后重启服务器。

注:这里修改/etc/selinux/config文件配置文件之后要,重启虚拟机,不然接下来的操作可能会遇到问题。

7. 创建sock文件目录

mkdir -p /var/lib/mysql
cd /home/mysql5.7
chown  mysql:mysql  /var/lib/mysql

 8. 配置mysql环境变量

vim /etc/profile 
添加如下内容:
export MYSQL_HOME=/home/mysql5.7
export PATH=$MYSQL_HOME/bin:$PATH

9. 初始化mysql

mysqld --user=mysql --basedir=/home/mysql5.7 --datadir=/home/mysql5.7/data --initialize
#初始化完成之后会自动分配一个密码

 linux上安装MySQL

 10. 启动mysql服务器

注:这里三条命名都要执行,要先重启服务器,之后才行

/home/mysql5.7/support-files/mysql.server restart  #重启mysql服务器
/home/mysql5.7/support-files/mysql.server stop    #停止mysql服务器
/home/mysql5.7/support-files/mysql.server start    #启动mysql服务器

 linux上安装MySQL

 11. 检查mysql服务是否正常

ps -ef | grep mysql

linux上安装MySQL

  12. 登陆mysql

mysql -u root -p

 #登录的时候会提示输入密码,这里的额密码就是初始化的时候分配的密码,把初始化时分配的密码复制黏贴到这里就行了。

注意:复制密码的时候不要多复制了空格;黏贴了密码之后密码是不会显示出来的,黏贴了一次之后直接按回车键就行了,不要黏贴多次,黏贴多次就会提示密码错误。

 linux上安装MySQL

 13.需要注意的是,刚安装的mysql,不能直接使用,需要修改初始密码

set password=password("123456"); 
 #这里的123456是要修改的密码,记得在修改密码的时候不要忘记输入  ;  

14. 测试密码是否修改成功

exit  #退出mysql
mysql -u root -p #登录mysql
#提示输入密码之后,输入刚修改的密码就好了。

linux上安装MySQL

三、遇到的问题

  1. 在删除linux自带的mysql时,yum remove  mysql-ql-libs.x86_64 出错,提示“无法解析主机”

linux上安装MySQL

 解决办法:

vi  /etc/yum.repos.d/CentOS-Base.repo 
在文件最下边添加如下内容:
[base]
name=CentOS-$releasever
enabled=1
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-vault/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos-vault/centos/RPM-GPG-KEY-CentOS-6
 
[updates]
name=CentOS-$releasever
enabled=1
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-vault/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos-vault/centos/RPM-GPG-KEY-CentOS-6
 
[extras]
name=CentOS-$releasever
enabled=1
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-vault/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos-vault/centos/RPM-GPG-KEY-CentOS-6
 
[centosplus]
name=CentOS-6.10 - Plus - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-vault/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos-vault/centos/RPM-GPG-KEY-CentOS-6
 
[contrib]
name=CentOS-6.10 - Contrib - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-vault/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos-vault/centos/RPM-GPG-KEY-CentOS-6

添加好之后保存退出,在使用yum命令就可以了。

接下来从新输入yum remove  mysql-ql-libs.x86_64 ,就可以删除成功了

linux上安装MySQL  

linux上安装MySQL

 2.  mysqld --user=mysql --basedir=/home/mysql5.7 --datadir=/home/mysql5.7/data --initialize  #在初始化mysql是出错:

错误提示如下:

2022-10-15T10:06:23.227276Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).

2022-10-15T10:06:23.262777Z 0 [Warning] InnoDB: Retry attempts for writing partial data failed.

2022-10-15T10:06:23.262816Z 0 [ERROR] InnoDB: Write to file ./ibdata1failed at offset 0, 1048576 bytes should have been written, only 0 were written. Operating system error number 28. Check that your OS and file system support files of this size. Check also that the disk is not full or a disk quota exceeded.

2022-10-15T10:06:23.262849Z 0 [ERROR] InnoDB: Error number 28 means 'No space left on device'

2022-10-15T10:06:23.262856Z 0 [ERROR] InnoDB: Could not set the file size of './ibdata1'. Probably out of disk space

2022-10-15T10:06:23.262860Z 0 [ERROR] InnoDB: InnoDB Database creation was aborted with error Generic error. You may need to delete the ibdata1 file before trying to start up again.

2022-10-15T10:06:23.869576Z 0 [ERROR] Plugin 'InnoDB' init function returned error.

2022-10-15T10:06:23.869641Z 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.

2022-10-15T10:06:23.869653Z 0 [ERROR] Failed to initialize builtin plugins.

2022-10-15T10:06:23.869658Z 0 [ERROR] Aborting

原因:这一大长串错误大体说的就是磁盘空间不够

输入: df - h  

发现/home 的磁盘空间使用了的显示100%,(这里问题解决了,一开始的错误没有截图,下图是解决了之后的),原因是我的/home目录下存储的东西太多了,我们创建的用户这些也都是默认在home目录下。

linux上安装MySQL

解决办法:

方法一:删除一些不用的文件,释放磁盘空间

方法二:对磁盘进行扩容,可以参考下这篇文章http://t.csdn.cn/Balg2

这里我用的是方法一,我把我的一下没用用的用户删了,把里边的一些没有用的文件删除了之后,就释放了一些磁盘空间。就解决了。

对磁盘进行扩容之后,重新初始化mysql就可以了。

3. 解决磁盘空间不足之后,在初始化mysql的时,又遇到了问题,提示Can't create/write to file '/home/mysql5.7/data/is_writable' 。

具体如下: 

mysqld: Can't create/write to file '/home/mysql5.7/data/is_writable' (Errcode: 13 - Permission denied)

2022-11-01T02:30:09.379330Z 0 [Warning] Changed limits: max_open_files: 1024 (requested 5000)

2022-11-01T02:30:09.380177Z 0 [Warning] Changed limits: table_open_cache: 431 (requested 2000)

2022-11-01T02:30:09.385902Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).

2022-11-01T02:30:09.449434Z 0 [ERROR] --initialize specified but the data directory exists and is not writable. Aborting.

2022-11-01T02:30:09.449614Z 0 [ERROR] Aborting

原因:这是因为权限不够,在安装mysql的时候,为了防止之后使用mysql的时候出现权限问题,所以安装mysql的时候我们是在root用户下安装的。我安装mysql的也是在root用户下安装的,然后出现权限问题是因为我没有在root用户下初始化mysql,我初始化mysql的时候忘记回到root用户了。如果你的mysql安装的时候没有在root用户下安装的话,建议从新在root用户安装。

解决办法:

回到root用户,在初始化。文章来源地址https://www.toymoban.com/news/detail-484041.html

到了这里,关于linux上安装MySQL的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用 Git&GitHub 的前期准备

    本节包含 SSh Key 的设置,从 GitHub 上创建一个仓库,并 clone 到本地,然后对其进行更改,提交,同步到仓库。需要已经下载好了 Git ,并且已经创建了一个 GitHub 账户 1.1 创建 SSH Key 运行这条命令,然后直接敲两次回车就可以。第一次回车是将 SSH 密匙存放在默认的路径下,第

    2024年01月20日
    浏览(40)
  • 使用whisper生成音频字幕——前期准备

    最近我们要写一个把没有字幕的音频生成字幕的APP,前期调研的很多方式,使用whisper可以实现,这篇文章就是说一些前期准备工作,我就不自己再写一篇了,参考以下两篇文章就行了。 whisper安装下载和python环境的准备 安装过程中踩过的坑

    2024年02月11日
    浏览(42)
  • 【UE Sequencer系列】01-前期准备

    新建一个工程 在虚幻商城中将我们需要的三种资产导入到新建的工程中 打开工程可以看到导入的资产 新建两个文件夹,一个用来存放音频,一个用来存放所有的Sequencer 导入音频(只支持wav格式) 选中声波,创建一个sound cue 打开“Forge”关卡 改变视口布局 第一个视口选择“

    2023年04月09日
    浏览(42)
  • 数据清洗:数据挖掘的前期准备工作

    ⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️ 🐴作者: 秋无之地 🐴简介:CSDN爬虫、后端、大数据领域创作者。目前从事python爬虫、后端和大数据等相关工作,主要擅长领域有:爬虫、后端、大数据开发、数据分析等。 🐴欢迎小伙伴们 点赞👍🏻、收藏

    2024年02月07日
    浏览(50)
  • 程序员自由创业周记#2:前期准备

    感恩 上次公开了创业的决定后,得到了很多亲朋好友和陌生朋友的鼓励或支持,以不同的形式,感动之情溢于言表。这些都会记在心里,大恩不言谢~ 创业方向 笔者是一名资质平平的iOS开发程序猿,创业项目也就是开发App卖,类型的话主要以工具类为主,优先会解决一些我的

    2024年02月10日
    浏览(46)
  • Hyperledger Fabric 应用实战(1)--前期准备

    1.1应用说明 本应用示例基于Hyperledger fabric2.4搭建一个自由房屋租赁区块链系统freerent, 用户可以自由在链上开展合同签订、执行和验真。freerent应用背景相对简单,当前应用搭建示例展示 fabric初级功能。后期将会不断探索 fabric应功能特性,也希望可以结合IPFS实现合同存储,

    2024年01月25日
    浏览(38)
  • DnCNN-matlab版本代码实战前期准备

    一、DnCNN-matlab版本代码实战前期准备 (1)DnCNN-matlab版本代码下载   https://download.csdn.net/download/qq_41104871/87457430 (2)DnCNN的灰度图像数据集下载   https://blog.csdn.net/qq_41104871/article/details/129931884 (3)DnCNN的彩色图像数据集下载   https://blog.csdn.net/qq_41104871/article/details/129932352

    2024年02月11日
    浏览(35)
  • Flask后端开发(一)-基础知识和前期准备

    目录 1.背景介绍 1.1. 项目背景 1.2. 项目难点 1.3. 项目环境 2. flask后端开发实现的功能 3. flask部署和前后端对接 3.1. flask运行配置和服务器部署 3.2. flask前后端传参 4. 后端测试工具 4.1. 工具介绍 4.2. 工具使用 后记 就是前几个月临时接手了一个后端项目,使用python flask框架进行后

    2024年02月08日
    浏览(49)
  • 从零开始画自己的DAG作业依赖图(一)--前期准备

    背景: 由于业务场景需要展示作业之间的依赖关系,由于一些开源的插件和当前的业务逻辑有一些冲突,个人打算尝试从零开始,一点点实现自己的DAG图。同时用博客记录自己实现过程和总结,不正确的地方,欢迎指正提升。 场景分析: 数据开发中常常有作业之间的依赖,

    2024年02月05日
    浏览(50)
  • Linux下CMake安装遇到的问题

    在使用pip install cmake安装完cmake以后,想要检查一下cmake的版本,于是输入 结果出现如下报错: 这个问题是由于CMake无法找到正确的安装路径。 首先,卸载现有的cmake: 然后,使用Anaconda提供的CMake包来安装: 安装完成以后即可解决问题。

    2024年04月12日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包