热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux下安装mysql的教程详解

这篇文章主要介绍了Linux下安装mysql的教程详解,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

1. 关闭mysql服务

# service mysqld stop

2. 检查是否有rpm包,如果没有用rpm安装过mysql,不应该有残留,如果有,需要删掉

检查语法: rpm -qa|grep -i mysql

删除语法: rpm -e <包的名字>

如果遇到依赖,无法删除,使用 rpm -e --nodeps <包的名字> 不检查依赖,直接删除rpm包。

3. 通过find命令检查是否有安装mysql文件,有需要删除

检查语法: find / -name mysql

删除语法: rm -rf 目录文件(或文件)

******(2)创建mysql分组和用户******

1. 暴力删除mysql用户

删除语法: userdel -r -f mysql(如果没有,会提示你mysql不存在,不用在意)

2. 添加分组

添加语法: groupadd mysql

 3. 添加mysql用户

添加语法: useradd -g mysql mysql

******(3)解压tar包******

1. cd到mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz目录

2. 解压tar包

解压语法:tar zxvf mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz

解压后多出一个mysql-5.7.12-linux-glibc2.5-x86_64的文件,

将这个文件复制到自己喜欢的目录,重命名为mysql,复制的时候请耐心等待,

复制完后,cd到mysql目录,新建一个data的文件夹。

复制语法: cp -r mysql-5.7.12-linux-glibc2.5-x86_64  /usr/local/mysql

新建文件语法: mkdir data

 chmod 770 data

在/usr/local/mysql里新建一个data文件夹,并修改权限为770(drwxrwx---.):

[wangh@HavGO mysql]$ sudo mkdir data
 [wangh@HavGO mysql]$ sudo chmod 770 data 

将/usr/local/mysql的用户设为mysql,用户组设为mysql:

[wangh@HavGO ~]$ cd /usr/local/
 [wangh@HavGO local]$ sudo chown -R mysql:mysql mysql 

   进入/usr/local/mysql文件夹并执行该命令:

[wangh@HavGO mysql]$ sudo bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

该命令的意思是初始化 并制定user、mysql目录和data目录(第三步创建的data)

 执行完成后得到一个mysql初始密码,我们需要先保存起来,后期第一次登录mysql时使用

2018-06-30T07:40:21.663544Z 1 [Note] A temporary password is generated for root@localhost: 0hl..Ult.usK

A temporary password is generated for root@localhost: 0hl..Ult.usK
                                                                                                             0hl..Ult.usK

   上述完毕后,执行该命令:

[wangh@HavGO mysql]$ sudo bin/mysql_ssl_rsa_setup --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

该命令设置SSL安全连接mysql(RSA加密),指定mysql目录和data目录

   在/var/log/里新建一个mysql日志文件夹用于存放mysql运行日志:

[wangh@HavGO mysql]$ cd /var/log
 [wangh@HavGO log]$ sudo mkdir mysql

   在/usr/local/mysql文件夹中执行以下命令:

[wangh@HavGO mysql]$ sudo bin/mysqld_safe --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data &

再次按一次Enter键让此命令后台运行

mysqld_safe脚本功能自行百度 

   将mysql加入/etc/init.d启动引导:

[wangh@HavGO mysql]$ sudo cp support-files/mysql.server /etc/init.d/mysql

   配置/etc/my.cnf(my.cnf是mysql的配置文件)

[wangh@HavGO mysql]$ vim /etc/my.cnf

修改配置,如下图:

[mysqld]
 # 设置mysql的安装目录
basedir=/usr/local/mysql
 # 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
 # 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
 socket=/tmp/mysql.sock
 #socket=/var/lib/mysql/mysql.sock
 user=mysql
 [mysql-safe]
 log-error=/var/log/mysql/mysqld.log
 pid-file=/var/run/mysqld/mysqld.pid

其他设置可配可不配

# 设置mysql客户端默认字符集
default-character-set=utf8
 socket=/var/lib/mysql/mysql.sock
 [mysqld]
 skip-name-resolve
 #设置3306端口
port = 3306
 # 允许最大连接数
max_cOnnections=200
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
 lower_case_table_names=1
 max_allowed_packet=16M
#忘记密码时可取消注释,无密码登陆
#skip-grant-tables

   配置环境变量

[wangh@HavGO mysql]$ vim /etc/profile

添加以下内容:

export MYSQL_HOME="/usr/local/mysql"
 export PATH="$PATH:$MYSQL_HOME/bin"

添加完成,保存退出后,让环境变量立即生效:

[wangh@HavGO mysql]$ source /etc/profile 

   现在mysql已经安装完毕,启动mysql服务:

[wangh@HavGO etc]$ sudo service mysql start

显示启动成功。

 如果在第2步骤中,mysql文件夹不是以“mysql命名”,mysqld_safe会报错,显示“mysqld_safe The file /usr/local/mysql/bin/mysqld 

 does not exist or is not executable.”

因为mysqld_safe脚本默认mysql路径为/usr/local/mysql,此时有两种解决办法,将mysqld_safe中的所有/usr/local/mysql目录改为自己实际的安装目录

 或者将自己实际安装目录创建链接至/usr/local/mysql

 mkdir /var/lib/mysql
 mysql_install_db --user=mysql --ldata=/var/lib/mysql/

   mysql服务启动后,键入命令进入mysql,密码为之前获取的初始密码;

[wangh@HavGO etc]$ mysql -u root -p

输入初始密码,回车

 设置新密码为:jkl12345784  

  再次用新密码登陆,就可以使用mysql了。

    登录后立即修改root密码:

mysql> alter user 'root'@'localhost' identified by 'admin';
 Query OK, 0 rows affected (0.00 sec)

其中your_password是你设置的新密码。新密码应是强密码,要求密码包含大小写字母、数字及标点符号,长度应该在6位以上。

grant all privileges on *.* to 'root'@'%'identified by 'admin' with grant option;
 flush privileges
 ps aux |grep httpd

总结

以上所述是小编给大家介绍的Linux下安装mysql的教程详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


推荐阅读
  • docker安装到基本使用
    记录docker概念,安装及入门日常使用Docker安装查看官方文档,在&quot;Debian上安装Docker&quot;,其他平台在&quot;这里查 ... [详细]
  • PatchODAX8: ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • 现在比较流行使用静态网站生成器来搭建网站,博客产品着陆页微信转发页面等。但每次都需要对服务器进行配置,也是一个重复但繁琐的工作。使用DockerWeb,只需5分钟就能搭建一个基于D ... [详细]
  • 如何搭建服务器环境php(2023年最新解答)
    导读:本篇文章编程笔记来给大家介绍有关如何搭建服务器环境php的相关内容,希望对大家有所帮助,一起来看看吧。本文目录一览:1、怎么搭建p ... [详细]
  • charles3.11.1抓https包
    结论先行:用的是安卓测试机,没加固之前的生产环境的安装包,可以抓到https请求加固之后的包【也就是要上应用市场的包】,抓不到https请求电脑上的操作:1.安装证书【电脑上安装了 ... [详细]
  • MySQL5.6.40在CentOS764下安装过程 ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • 本文介绍了深入浅出Linux设备驱动编程的重要性,以及两种加载和删除Linux内核模块的方法。通过一个内核模块的例子,展示了模块的编译和加载过程,并讨论了模块对内核大小的控制。深入理解Linux设备驱动编程对于开发者来说非常重要。 ... [详细]
  • 本文介绍了在Mac上安装Xamarin并使用Windows上的VS开发iOS app的方法,包括所需的安装环境和软件,以及使用Xamarin.iOS进行开发的步骤。通过这种方法,即使没有Mac或者安装苹果系统,程序员们也能轻松开发iOS app。 ... [详细]
  • 本文介绍了使用数据库管理员用户执行onstat -l命令来监控GBase8s数据库的物理日志和逻辑日志的使用情况,并强调了对已使用的逻辑日志是否及时备份的重要性。同时提供了监控方法和注意事项。 ... [详细]
  • centos php部署到nginx 404_NodeJS项目部署到阿里云ECS服务器全程详解
    本文转载自:http:www.kovli.com20170919ecs-deploy作者:Kovli本文详细介绍如何部署NodeJS项目到阿里云ECS上, ... [详细]
  • tomcat的log文件夹下有以下几种日志:1、catalina.YYYY-MM-DD.logcatalina引擎输出的日志;catalina是tomc ... [详细]
  •   一、GeoTrust证书的相关介绍    GeoTrust成立于2001年,其到2006年就占领了全球市场25%的市场份额,所以GeoTrust是目前全球第二大的数字证书颁发机 ... [详细]
  • 基于SSL的mysql服务器的主从架构实现说明:本文选用172.16.22.1作为主服务器,172.16.22.3作为从服务器从服务器的mysql软件版 ... [详细]
author-avatar
mobiledu2502897157
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有