第 19 课 开源数据库MySQL DBA运维实战 第1章 部署

前言

数据库能做什么?

不论是淘宝,吃鸡,爱奇艺,抖音,快手,知乎,
百度贴吧等,总所周知的服务程序。
存储的数据,包含用户的账号,密码,级别,存款,余额,等级,购物记录,
头像本地路径,视频文件路径。
只要是信息,就一定在数据库里。

数据库由来

1 人工管理阶段。(过去)
	账本
2 文件系统阶段(近代)
	excel
3 数据库系统管理阶段(目前)
	mysql

数据库-系统结构

1. 数据库系统 DBS

A.数据库管理系统(DataBase Management System, DBMS): (面试题)

SQL(RDS关系型数据库)
ORACLE
Oracle MySQL
DB2(IBM)
SQL-server(MS)
Mysql
MariaDB
Percona server(taobao)

B.DBA:工程师

仅作了解

2. SQL语言(结构化查询语言)

SQL(Structured Query Language 即结构化查询语言)
A. DDL语句 数据库定义语言: 数据库、表、视图、索引、存储过程、函数, CREATE DROP ALTER //开发人员
B. DML语句 数据库操纵语言: 插入数据INSERT、删除数据DELETE、更新数据UPDATE //开发人员
C. DQL语句 数据库查询语言: 查询数据 SELECT
D. DCL语句 数据库控制语言: 例如控制用户的访问权限GRANT、REVOKE

3. 数据访问技术

A. ODBC PHP <.php>
B. JDBC JAVA <.jsp>
C.ASP.NET

版本Mysql5.7

部署

官网地址

www.mysql.com
www.oracle.com

RPM

设置内存

还原快照
调整2G内存
请关闭防火墙和selinux
	立刻停止防火墙
		# systemctl stop  firewalld
	开机禁用防火墙
		# systemctl disable  firewalld
	立刻停止selinux
		# setenforce 0
	开机禁用selinux
		# vim    /etc/selinux/config
			SELINUX=disabled

1.访问国内mysql镜像站

http://mirrors.ustc.edu.cn/

2.下载软件包

官方地址下载或百度网盘下载

[root@localhost ~]#wget http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7/mysql-community-server-5.7.29-1.el7.x86_64.rpm
RPM包,MySQL服务器
[root@localhost ~]#wget http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7/mysql-community-client-5.7.29-1.el7.x86_64.rpm
RPM包,客户端实用程序
[root@localhost ~]# wget http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7/mysql-community-common-5.7.29-1.el7.x86_64.rpm
Rpm包,MySQL配置
[root@localhost ~]# wget http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7/mysql-community-libs-5.7.29-1.el7.x86_64.rpm
RPM包,共享图书馆
第 19 课 开源数据库MySQL DBA运维实战 第1章 部署_第1张图片

3.安装相关软件

三个相关软件
[root@localhost ~]# yum install -y net-tools.x86_64 libaio.x86_64 perl.x86_64

4.安装Mysql服务器

yum install -y mysql-community*
可能存在报错信息
第 19 课 开源数据库MySQL DBA运维实战 第1章 部署_第2张图片

解决方法:卸载冲突的软件包,再安装

[root@localhost ~]# yum remove -y mariadb-libs.x86_64
第 19 课 开源数据库MySQL DBA运维实战 第1章 部署_第3张图片

[root@localhost ~]# yum install -y mysql-community*
安装完毕的提示
第 19 课 开源数据库MySQL DBA运维实战 第1章 部署_第4张图片

5.启动Mysql服务器

[root@localhost ~]#systemctl start mysqld
[root@localhost ~]#systemctl enable mysqld
[root@localhost ~]#systemctl status mysqld

6.查询Mysql服务器默认密码

没有查到密码的原因,是因为没有启动成功。
[root@localhost ~]#grep ‘password’ /var/log/mysqld.log
注意

冒号和空格的后面,全都是密码
在这里插入图片描述

7.修改Mysql服务器密码

[root@localhost ~]# mysqladmin -uroot -p’o:owVUfdn9Og’ password ‘QianFeng@123’
图示
在这里插入图片描述

8.登录Mysql系统

[root@localhost ~]# mysql -uroot -p’QianFeng@123’
第 19 课 开源数据库MySQL DBA运维实战 第1章 部署_第5张图片

源码包

准备编译环境

yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make cmake
编译软件
wget http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
内存硬盘空间

注:此路径可能存在失效

安装mysql

准备源码包

groupadd mysql
useradd -r -g mysql -s /bin/false mysql
tar xvf mysql-5.7.19.tar.gz
cd mysql-5.7.19
[root@mysql3 mysql-5.7.19]# pwd
/root/mysql-5.7.19
mv …/boost_1_59_0.tar.gz .
tar xf boost_1_59_0.tar.gz

注意包的位置

配置

[[email protected] ~]# cmake .
-DWITH_BOOST=boost_1_59_0/
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DSYSCONFDIR=/etc
-DMYSQL_DATADIR=/usr/local/mysql/data
-DINSTALL_MANDIR=/usr/share/man
-DMYSQL_TCP_PORT=3306
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock
-DDEFAULT_CHARSET=utf8
-DEXTRA_CHARSETS=all
-DDEFAULT_COLLATION=utf8_general_ci
-DWITH_READLINE=1
-DWITH_SSL=system
-DWITH_EMBEDDED_SERVER=1
-DENABLED_LOCAL_INFILE=1
-DWITH_INNOBASE_STORAGE_ENGINE=1

第 19 课 开源数据库MySQL DBA运维实战 第1章 部署_第6张图片
常见错误
-DWITH_BOOST=boost_1_59_0
如果没有提前准备,可以使用下面的参数自己装。
-DDOWNLOAD_BOOST=1
-DWITH_READLINE=1 \ 5.6被移除
如果cmake失败,请将CMakeCache.txt缓存移除

编译

make
等待1个小时左右
第 19 课 开源数据库MySQL DBA运维实战 第1章 部署_第7张图片
第 19 课 开源数据库MySQL DBA运维实战 第1章 部署_第8张图片

安装

# make install

初始化

cd /usr/local/mysql
安装位置
mkdir mysql-files
chown -R mysql.mysql /usr/local/mysql
注意目录名称
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
会生产临时密码,在屏幕上。
保存临时密码。
G&fo/aAiA5RT
第 19 课 开源数据库MySQL DBA运维实战 第1章 部署_第9张图片
/usr/local/mysql/bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data

建立MySQL配置文件my.cnf
备份原有配置文件
[root@localhost mysql]# mv /etc/my.cnf ~
[root@mysql1 mysql]# vim /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data

开机启动MySQL

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
# chkconfig --add mysqld
添加mysql服务
# chkconfig mysqld on
开机自动启动mysql服务
# service mysqld start
# ps aux |grep mysqld
mysql -u root -p ‘密码’ 登陆有问题吗?
/usr/local/mysql/bin/mysql -u root -p’x/dwiQ2
不要忘了配置新密码。
#/usr/local/mysql/bin/mysqladmin -u root -p ‘x/dwiQ2
使用新·密码/usr/local/mysql/bin/mysql -u root -p’QinFeng@123’
show databases; 看到库即可。
第 19 课 开源数据库MySQL DBA运维实战 第1章 部署_第10张图片


忘记数据库密码如何操作

vi /etc/my.cnf
添加跳过密码命令
skip-grant-tables
进入数据库
use mysql

你可能感兴趣的:(mysql)