设为首页 加入收藏

TOP

Mysql数据库的二进制安装和基础入门操作(一)
2017-10-16 18:20:04 】 浏览:5370
Tags:Mysql 数据库 二进制 安装 基础 入门 操作

前言:Mysql数据库,知识非常的多,要想学精学通这块知识,估计也要花费和学linux一样的精力和时间。小编也是只会些毛皮,给大家分享一下~

一、MySQL安装

(1)安装方式:

1 、程序包yum安装,下实验一

  优点:安装快,简单

  缺点:定死了各个文件的地方,太死板

2 、二进制格式的程序包:展开至特定路径,并经过简单配置后即可使用(推荐),下实验二

3 、源代码:编译安装,太麻烦

 

(2)mysql 的程序组成:

Client:

  mysql :CLI 交互式客户端程序

  mysqldump, mysqladmin...

Server:

  mysqld_safe mysql的备份

  mysqld

  mysqld_multi :多实例

服务器监听的两种socket 地址:

  ip socket: 监听在tcp 的3306 端口,支持远程通信

  unix sock: 监听在sock 文件上(/tmp/mysql.sock,/var/lib/mysql/mysql.sock) ,仅支持本机通信

 

实验一:yum源安装MySQL和开启设置服务

1、打开官方网站,上边有各种版本的yum源,找到自己想要的版本设置yum源

https://downloads.mariadb.org/mariadb/repositories/

若上不了网,也可以使用自己光盘里的老版本

 

2、若不用自己的光盘老版本,要配置yum源,这里我选了10.2的版本

vim /etc/yum.repos.d/along.repo

[mariadb]

name = MariaDB

baseurl = http://yum.mariadb.org/10.2/centos7-amd64

gpgcheck=0

 

若有其他yum源,加一个enabled=0 先临时关闭,yum clean all 清除缓存,注意:官方给的yum源安装的Maria没有安装相依赖的包,还需自己安装相依赖的包

 

3、yum安装和开启服务

这里,就直接安装光盘里的老版本了

yum -y install mariadb-server

systemctl start mariadb 开启服务

  ss -nutl 打开了3306的tcp端口

  查询端口对应的进程信息 lsof -i :3306 或 netstat -tnlp | grep 3306

注意:开启服务后,会多一个mysql的用户,它的家目录:存放数据库,相当于数据库中的每个表

mysql用户是安装包时,执行了个脚本,创建了mysql用户,提示我们要是二进制安装需创建用户

rpm -q --scripts mariadb-server 可以查看这个脚本

 

 

4、mysql 运行

发现是root,能查能删,很不安全

还能mysql xxx 匿名登录

 

5、运行安全脚本

/usr/bin/mysql_secure_installation

 

实验二:二进制安装mariadb和开启设置服务

注意:安装之前要确保自己系统上没有mariadb服务,有老版本可以先卸掉,删除mysql用户

1、去官网下载自己想要的版本 http://mariadb.org

rpm -qi mariadb 可以查询官网

上传,解包解压缩

rz,tar xvf mariadb-10.2.8-linux-x86_64.tar.gz -C /usr/local/

(不像编译安装一样,解包可以放在任何目录,这个二进制安装必须指定在这个目录)

 

2、cd /usr/local/ 发现mariadb的目录名字不符合要求

ln -s mariadb-10.2.8-linux-x86_64/ mysql 创建软连接也可以改名

 

3、创建mysql用户

useradd -d /app/mysqldb -r -m -s /sbin/nologin mysql

 

4、创建修改配置文件

ls support-files/ 包里自带的有配置文件,但地方不对,要放在/etc/mysql/my.cnf

mkdir /etc/mysql

cp support-files/my-huge.cnf /etc/mysql/my.cnf 我们演示一个大的

vim /etc/mysql/my.cnf 修改配置文件

[mysqld]

datadir = /app/mysqldb //指定总目录,必须的

innodb_file_per_table = on //让每一个表数据库都是一个文件,方便管理

skip_name_resolve = on //忽略名字的反向解析,加快速度

 

5、执行脚本,创建系统数据库

cd /usr/local/mysql 一定要在这个目录下执行脚本,因为脚本写死了

./scripts/mysql_install_db --user=mysql --datadir=/app/mysqldb 执行脚本

完成后就会在/app/mysqldb/ 生成mysql系统数据库

 

6、把服务脚本复制过去

cp support-files/mysql.server /etc/init.d/mysqld

chkconfig --add mysqld 设置服务在哪个运行级别,在哪个运行级别开启服务

chkconfig --list mysqld

service mysqld start 失败,看失败原因:缺少日志文件,日志文件须有读写权限

 

7、创建配置文件

mkdir /var/log/mariadb/

touch /var/log/mariadb/mariadb.log

chown mysql /var/log/mariadb/mariadb.log

service mysqld start 开启成功

设置PATH:

vim /etc/profile.d/mysql.sh

PATH=/usr/local/mysql/bin:$PATH

. /etc/profile.d/mysql.sh

 

8、运行安全初始化脚本,同上实验

mysql_secure_installation

 

 

二、mysql基础入门操作

1、命令行交互式命令:mysql

mysql 命令的选项:

  -uUSERNAME: 用户名;默认为root

  -hHOST: 服务器主机; 默认为localhost

  -pPASSWORD :用户的密码; 建议使用-p, 默认为空密码

 

2、mysql中一些的名词

数据库:database

表:table

索引:index

引擎:engines

列、字段:column

\G:竖着显示

 

3、SQL 语句:(4大类)

DDL: Data Defination Language 数据定义语言,修改表结构

  CREATE(创建), DROP(删除), ALTER(修改表结构)

DML: Data Manipulation Language 数据操作语言修改表里的数据

  INSERT, DELETE, UPDATE(更新数据)

DQL :Data Query Language 数据的查询语言

  SELECT 用法多,非常灵活

DCL :Data Control Language 数据控制

首页 上一页 1 2 3 4 下一页 尾页 1/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Oracle控制文件日志文件数据文件.. 下一篇Elasticsearch学习笔记 一

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目