LINUX环境下安装MySQL数据库_linux系统安装mysql数据库_山上有人的博客-程序员宝宝

技术标签: linux  mysql  数据库  善其事利其器  

下载MySQL安装包

进入官网选择需要的版本下载安装包。官网下载地址:官网下载
进入下载也如下图:
在这里插入图片描述

安装MySQL

1、上传安装包值Linux服务器(习惯传至/usr/local,以下都以这个路径为准);
2、解压并将包名改为mysql(安装包名太长了,改为mysql)

#进入local目录
cd /usr/local/
#解压mysql安装包
tar -zxvf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
#修改文件夹名称为mysql
mv mysql-5.7.36-linux-glibc2.12-x86_64 mysql

3、创建mysql用户和用户组

groupadd mysql(添加用户组)
useradd -r -g mysql mysql(创建mysql用户并将其添加至mysql用户组)

4、进入mysql文件夹中穿甲data和log目录用于存放数据和日志

cd mysql
mkdir data
mkdir log

5、将mysql文件夹的所有者改为mysql所属

chown -R mysql:mysql /usr/local/mysql

6、编辑mysql配置文件my.cnf,centos中在etc文件夹下默认有my.cnf文件(vim /etc/my.cnf)需要修改的配置如下:

socket=/temp/mysql.sock(socket通信设置)
basedir=/usr/local/mysql(mysql安装目录)
datadir=/usr/local/mysql/data(数据文件文职)
max_connections=1024(允许最大连接数)
lower_case_table_names(表名是否区分大小写,linux下mysql默认是要区分表名大小写的,0为区分  1为不区分)

7、初始化MySQL

cd /usr/local/mysql/bin/
mysqld --initalize-insecure(无密码初始化)
mysqld --initalize(有密码初始化,会随机生成一段密码,不好记,建议使用无密码初始化,后面再添加密码)

安装成功后如下图所示:
在这里插入图片描述
如果初始化报错mysqld: error while loading shared libraries: libaio.so.1则执行以下命令:

yum install  libaio-devel.x86_64

添加服务并设置开机自启

1、将mysql脚本复制到etc资源目录

cp -a /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld

2、修改资源目录下mysqld的可执行权限

chmod +x /etc/rc.d/init.d/mysqld

3、添加为系统服务

chkconfig --add mysqld(添加为系统服务)
chkconfig --list(查看系统服务列表,如果mysqld 3/4/5状态为on则表添加成功)
chkconfig --level 345 mysqld on(如果3/4/5为off则执行该命令开启)

在这里插入图片描述

4、启动MySQL

service mysqld start(启动mysql服务)
service mysqld stop(停止服务)
service mysqld restart(重启服务)

配置数据库环境变量

1、编译环境变量文件,添加mysql安装地址

vim /etc/profile(配置文件位于etc目录下)
export PATH=$PATH:/usr/local/mysql/bin(在profile文件末尾添加)

2、重载配置文件使其生效

source /etc/profile

配置数据库用户和权限

1、登录mysql数据库

mysql -u root -p(无密码初始化直接登录,有密码初始化输入随机生成的那串密码登录)

2、修改root密码

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';

3、开启数据库远程连接,默认只允许本机连接;

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION; (允许root用户可以从任何主机连接到mysql服务;如果要指定ip连接的话将%改为要允许连接的ip即可)
FLUSH PRIVILEGES;(使其生效)

至此,MySQL数据库安装完成

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/xianren95/article/details/121889444

智能推荐

【故障处理】由于ojdbc14.jar版本不正确导致ORA-01461和ORA-01483故障的处理_cuanchuwei1207的博客-程序员宝宝

今天遭遇由于ojdbc14.jar版本不正确导致ORA-01461和ORA-01483报错的问题。简单记录一下这个问题的处理过程。1.应用程序报错现象以下是从应用程序日志中截取的两段报错信息。2011-0...

Linux下curl模拟带header的Http请求_瑺圊樹的博客-程序员宝宝

curl -H “header的key值:header的value值,header的key值:header的value值”http://127.0.0.1:8080/getUserById

C++STL的vector扩容原理及实现_c++ vector 扩容_Busy_Lazy的博客-程序员宝宝

C++的STL中vector的扩容思想及实现原理C++的STL库中的vector,是一种使用很频繁的容器,因为它是一个自动扩容的容器,使用起来比较灵活,可以一直往容器的末尾添加数据。那么它是怎么实现自动扩容的呢?其实关键点就是对于容器里的元素数量进行判断,当容器的存储数量已经达到容量时,那么就需要进行一个倍增扩容了。整体的一个扩容流程为:申请新的内存空间(空间大小为原空间的两倍或一点五倍)—> 把原空间的元素拷贝到新的空间里 —> 释放原空间 —> 数组指针指向新空间。实现vec

[性能测试]关于性能测试的一些建议_aew95547的博客-程序员宝宝

梳理性能测试的建议点:性能测试一般建议在功能测试通过后或功能相对稳定后再做,以免过多改动对系统性能的影响。但一些对性能要求较高的软件或系统软件则建议提前做性能测试,避免延后的测试发现性能不达标导致整个系统被推翻。性能测试建议在内网进行,为了减少网络延迟和带宽限制对性能测试的影响。性能测试建议至少测试两轮,比如在优化前和优化后,这样能够对比出优化前后的效...

Mysql 重做日志_mysql重做日志文件和二进制文件的作用_朝闻道-夕死可矣的博客-程序员宝宝

innodb事务日志包括redo log和undo log。redo log是重做日志,用来做数据库的crash recovery前滚操作,undo log是回滚日志,提供回滚操作。redo log保存了对InnoDB表中的数据的修改记录,所以也叫日志文件undo log不是redo log的逆向过程,其实它们都算是用来恢复的日志:1.redo log通常是物理日志,记录的是数据页的物理修改...

你盼世界,我盼望你无bug|掘金征文_LinDaiDai_霖呆呆的博客-程序员宝宝

前言你盼世界,我盼望你无bug。Hello 大家好!我是霖呆呆!非常感谢你点了进来,就算是被标题吸引,我也感谢????。其实在????树酱????分享给我掘金这次征文活动的时候,呆呆第一...

随便推点

没明白的,后来还是明白oracle的JDBC驱动_xdb6与jdbc_番薯伯的博客-程序员宝宝

ojdbc5.jar (2,091,135 bytes) - Classes for use with JDK 1.5. It contains the JDBC driver classes, except classes for NLS support in Oracle Object and Collection types支持jdk版本1.5,包含了JDBC的驱动类.

MySQL日志,MySQL备份及恢复_why_upup的博客-程序员宝宝

日志1.日志分类:A.error log(错误日志):启动,停止,关闭失败报错,rpm安装位置 /var/log/mysql.logB.General query log(通用查询日志):所有的查询都记下来C.binary log(二进制日志):实现备份,增量备份。只记录改变数据,除了select都记D.relay log(中继日志):读取主服务器的binlog,在本地回放,保持一致E.slow log(慢查询日志):指导调优,定义某个查询语句,定义超时时间,通过日志提供调优建议..

jdbc和oracle的区别,oracle10g下JDBC驱动包的区别_weixin_39992660的博客-程序员宝宝

这两天在自己用oracle10g,发现JDBC目录下的驱动包又有所变化。看了一下oracle的文档说明,了解了一下它们的用途,相信大家有时候也很迷惑,写出来共享一下。这些是oracle10g下的驱动包的名称和它们的作用,其他版本的oracle基本类似。支持所有平台的JDBC Thin驱动classes12.jar (1,417,089 bytes) - JDK 1.2 和 JDK 1.3下使用...

java基础总结_回眸。等待的博客-程序员宝宝

java基础首先从流程控制讲起,我们常用的流程控制有If..else switch for while for(int a: arr)输出与输入输出:System.out.print(); 快捷键 syso (Alt+/)输入:Scanner input = new...

下载安装交叉编译工具链出现的问题与解决_xz: (stdin): 不可预料的输入结尾_CNRL的博客-程序员宝宝

问题:下载命令:sudo wget http://releases.linaro.org/components/toolchain/binaries/6.1-2016.08/arm-linux-gnueabi/gcc-linaro-6.1.1-2016.08-x86_64_arm-linux-gnueabi.tar.xz解压命令:sudo xz -d gcc-linaro-6.1.1-20...

UDP和TCP的对比_udp与tcp的对比分析_一个头一个大的博客-程序员宝宝

用户数据报协议UDP(User Datagram Protocol)、传输控制协议TCP(Transmission Control Protocol)UDP和TCP是TCP/IP体系结构运输层中的两个重要协议,其使用频率仅次于网际层的IP协议运输层采用面向连接的 TCP 协议时,尽管下面的网络是不可靠的(只提供尽最大努力服务),但TCP协议就相当于在逻辑上建立了一条通信信道,该信道是全双工的可靠信道。当运输层采用无连接的 UDP 协议时,这种逻辑通信信道是一条不可靠信道。接下来,我们从以下几个方面对比UDP