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

安装部署_MySQL5.6.38安装部署及介绍

篇首语:本文由编程笔记#小编为大家整理,主要介绍了MySQL-5.6.38安装部署及介绍相关的知识,希望对你有一定的参考价值。第1章MySQL简介及部署

篇首语:本文由编程笔记#小编为大家整理,主要介绍了MySQL-5.6.38 安装部署及介绍相关的知识,希望对你有一定的参考价值。



第1章 MySQL简介及部署

1.1 介绍

1.1.1 什么是数据

数据是指对客观事件进行记录并可以鉴别的符号,是对客观事物的性质、状态以及相互关系等进行记载的物理符号或这些物理符号的组合。它是可识别的、抽象的符号。


1.1.2 数据库管理系统种类---关系型

优点:

强大的查询功能

强一致性

二级索引

RDBMS:Oracle、mysql、mssql(SQL Server)、PG(postgresql)

适用场景:数据安全性要求较高的应用场景


1.1.3 数据库管理系统种类---非关系型

优点:

灵活模式

扩展性

性能

NoSQL:redis、mongodb、memcache、Hbase、neo4j

适用场景:针对性能要求较高,数据安全性要求不是太高的场景,一般是配合RDBMS使用的产品


1.2 MySQL部署

1.2.1 安装方式

1、 rpm或yum安装:安装方便、安装速度快、无法定制

2、 二进制:不需要安装,解压即可使用,不能定制功能

3、 编译安装:可定制,安装速度慢 (5.5版本之前:./configure make make install | 5.5之后:cmake gmake)


1.2.2 编译安装
1.2.3 安装环境准备

系统版本:Linux Centos-6.9 2.6.32-696.23.1.el6.x86_64

MySQL软件版本:5.6.38

IP地址与主机名:10.0.0.51 db01


1.2.4 MySQL软件包获取方式

https://downloads.mysql.com/archives/community/ #官网下载


1.2.5 开始安装

(1) 安装依赖包:

yum install -y ncurses-devel libaio-devel gcc-c++ gcc ncurses-devel freeglut-devel


(2) 安装cmake

yum install -y cmake


(3) 创建mysql用户,用来管理mysql

useradd -s /sbin/nologin -M mysql


(4) 解压软件包

tar xf mysql-5.6.38.tar.gz


(5) 开始编译安装


cd mysql-5.6.38????????????? #<====进入解压后的目录


cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.38

-DMYSQL_DATADIR=/application/mysql-5.6.38/data

-DMYSQL_UNIX_ADDR=/application/mysql-5.6.38/tmp/mysql.sock

-DDEFAULT_CHARSET=utf8

-DDEFAULT_COLLATION=utf8_general_ci

-DWITH_EXTRA_CHARSETS=all

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_FEDERATED_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1

-DWITH_ZLIB=bundled

-DWITH_SSL=bundled

-DENABLED_LOCAL_INFILE=1

-DWITH_EMBEDDED_SERVER=1

-DENABLE_DOWNLOADS=1

-DWITH_DEBUG=0


make && make install #<======编译安装

#===================================

Cmake 做了什么?

1、做了些预配置

2、影响了编译后的程序(编译过程会将cmake指定的配置信息硬编码到程序文件中)

mysqld

mysql

mysql_install_db

mysqldump

mysqladmin

mysqld_safe

等。

#=====================================


ln -s /application/mysql-5.6.38/ /application/mysql????????? #<====创建安装目录的软链接

cp support-files/my*.cnf /etc/my.cnf???????? #<===复制my.conf到etc目录下


#==================

/application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data --user=mysql #<=====初始化数据库

#==================

chown -R mysql.mysql /application/mysql/ #<====修改软件路径归属

cp support-files/mysql.server /etc/init.d/mysqld #<===拷贝启动脚本到Sys-v模式目录

chmod 700 /etc/init.d/mysqld

/etc/init.d/mysqld start #<======启动数据库

netstat -lntup|grep 3306 #<======检查服务端口号

echo ‘PATH=/application/mysql/bin/:$PATH‘ >>/etc/profile #<=====添加环境变量

source /etc/profile


mysql??? #【回车】#启动mysql数据库,首次启动没有密码

++++++++++++++++++++++++++++++拓展部分+++++++++++++++++++++++++++++++++++++

修改密码:

1.例如你的 root用户现在没有密码,你希望的密码修改为123456,那么命令是:

mysqladmin -u root password 123456


2.如果你的root现在有密码了(123456),那么修改密码为abcdef的命令是:

mysqladmin -u root -p password abcdef

注意,命令回车后会问你旧密码,输入旧密码123456之后命令完成,密码修改成功。


3.如果你的root现在有密码了(123456),那么修改密码为abcdef的命令是:

mysqladmin -u root -p123456 password abcdef (注意-p 不要和后面的密码分

开写,要写在一起,不然会出错,错误如下所示)


4.使用phpmyadmin,这是最简单的了,修改mysql库的user表,

不过别忘了使用PASSWORD函数。

忘记密码:

下面我们提供了6种不同的修改mysql root用户的密码,与增加mysql用户的方法。


方法一

使用phpmyadmin,这是最简单的了,修改mysql库的user表,

不过别忘了使用PASSWORD函数。


方法二

使用mysqladmin,这是前面声明的一个特例。

mysqladmin -u root -p password mypasswd

输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。

把命令里的root改为你的用户名,你就可以改你自己的密码了。

当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin,

那么这种方法就是无效的。

而且mysqladmin无法把密码清空。

下面的方法都在mysql提示符下使用,且必须有mysql的root权限:


方法三

mysql> INSERT INTO mysql.user (Host,User,Password)

VALUES(‘%‘,‘jeffrey‘,PASSWORD(‘biscuit‘));

mysql> FLUSH PRIVILEGES

确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。

在《mysql中文参考手册》里有这个例子,所以我也就写出来了。

注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。


方法四

和方法三一样,只是使用了REPLACE语句

mysql> REPLACE INTO mysql.user (Host,User,Password)

VALUES(‘%‘,‘jeffrey‘,PASSWORD(‘biscuit‘));

mysql> FLUSH PRIVILEGES


方法五

使用SET PASSWORD语句,

mysql> SET PASSWORD FOR [email&#160;protected]"%" = PASSWORD(‘biscuit‘);

拟也必须使用PASSWORD()函数,

但是不需要使用FLUSH PRIVILEGES。


方法六

使用GRANT ... IDENTIFIED BY语句

mysql> GRANT USAGE ON *.* TO [email&#160;protected]"%" IDENTIFIED BY ‘biscuit‘;

这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES。

注意: PASSWORD() [不是]以在Unix口令加密的同样方法施行口令加密。

MySQL 忘记口令的解决办法

如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。

启动 MySQL :bin/safe_mysqld --skip-grant-tables &

就可以不需要密码就进入 MySQL 了。

然后就是

>use mysql

>update user set password=password("new_pass") where user="root";

>flush privileges;

重新杀 MySQL ,用正常方法启动 MySQL 。

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


推荐阅读
  • 简化报表生成:EasyReport工具的全面解析
    本文详细介绍了EasyReport,一个易于使用的开源Web报表工具。该工具支持Hadoop、HBase及多种关系型数据库,能够将SQL查询结果转换为HTML表格,并提供Excel导出、图表显示和表头冻结等功能。 ... [详细]
  • 本文详细介绍了如何在云服务器上配置Nginx、Tomcat、JDK和MySQL。涵盖从下载、安装到配置的完整步骤,帮助读者快速搭建Java Web开发环境。 ... [详细]
  • 本文探讨了在 SQL Server 中使用 JDBC 插入数据时遇到的问题。通过详细分析代码和数据库配置,提供了解决方案并解释了潜在的原因。 ... [详细]
  • 优化Flask应用的并发处理:解决Mysql连接过多问题
    本文探讨了在Flask应用中通过优化后端架构来应对高并发请求,特别是针对Mysql 'too many connections' 错误的解决方案。我们将介绍如何利用Redis缓存、Gunicorn多进程和Celery异步任务队列来提升系统的性能和稳定性。 ... [详细]
  • 本文深入探讨了MySQL中常见的面试问题,包括事务隔离级别、存储引擎选择、索引结构及优化等关键知识点。通过详细解析,帮助读者在面对BAT等大厂面试时更加从容。 ... [详细]
  • 前言无论是对于刚入行工作还是已经工作几年的java开发者来说,面试求职始终是你需要直面的一件事情。首先梳理自己的知识体系,针对性准备,会有事半功倍的效果。我们往往会把重点放在技术上 ... [详细]
  • MySQL锁机制详解
    本文深入探讨了MySQL中的锁机制,包括表级锁、行级锁以及元数据锁,通过实例详细解释了各种锁的工作原理及其应用场景。同时,文章还介绍了如何通过锁来优化数据库性能,避免常见的并发问题。 ... [详细]
  • 本文探讨了Web开发与游戏开发之间的主要区别,旨在帮助开发者更好地理解两种开发领域的特性和需求。文章基于作者的实际经验和网络资料整理而成。 ... [详细]
  • 本文将详细介绍如何在ThinkPHP6框架中实现多数据库的部署,包括读写分离的策略,以及如何通过负载均衡和MySQL同步技术优化数据库性能。 ... [详细]
  • 主调|大侠_重温C++ ... [详细]
  • 本文探讨了如何在Hive(基于Hadoop)环境中编写类似SQL的语句,以去除字段中的空格。特别是在处理邮政编码等数据时,去除特定位置的空格是常见的需求。 ... [详细]
  • CentOS 6.8 上安装 Oracle 10.2.0.1 的常见问题及解决方案
    本文记录了在 CentOS 6.8 系统上安装 Oracle 10.2.0.1 数据库时遇到的问题及解决方法,包括依赖库缺失、操作系统版本不兼容、用户权限不足等问题。 ... [详细]
  • 本文详细介绍了如何在Linux系统中创建和管理DB2数据库,包括用户切换、数据库创建、错误处理、连接与断开、表空间和缓冲池的创建,以及用户权限管理和数据导入导出等操作。 ... [详细]
  • Ubuntu GamePack:专为游戏爱好者打造的Linux发行版
    随着Linux系统在游戏领域的应用越来越广泛,许多Linux用户开始寻求在自己的系统上畅玩游戏的方法。UALinux,一家致力于推广GNU/Linux使用的乌克兰公司,推出了基于Ubuntu 16.04的Ubuntu GamePack,旨在为Linux用户提供一个游戏友好型的操作环境。 ... [详细]
  • 本文旨在详细介绍如何在PL/SQL环境中调试Oracle数据库中的触发器。虽然触发器能够实现某些复杂的功能,但其使用可能增加系统的维护难度。因此,本文不仅提供技术指导,还讨论了触发器使用的利弊。 ... [详细]
author-avatar
田文萍
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有