数据库介绍

mysql与php是黄金搭档(LAMPLNMP

常见的数据库

Oracle、Sql server、Access、Mariadb、Ds2等

安装

安装前确保计算机时间准确

源码包安装

优点:开源、编译安装

缺点:安装步骤多,易出错、编译时间长

使用编译安装方式,需要提前安装 ncurses (常用终端库)

下载:链接

1、将软件包传递到服务器上 “/usr/local/src”

扩展:解包


2、解压源码包

tar -zxvf ncurses-6.1.tar.gz

3、切换到需要安装的源码包

配置(config、configure、bootstrap)  ——> 编译(make、bootstrapd)  ——>安装(make install、bootstrapd install)

(1)、配置

主要指定软件的安装目录、需要的依赖在什么地方、指定不需要的依赖、配置文件的路径、通用数据存储位置等

./configure --prefix=/usr/local/ncurses

(2)、编译

make

(3)、安装

make install

二进制包安装

优点:管理简单

缺点:经过编译、不再刻意看到源代码

回顾rpm指令:

rpm -qa | grep 关键字

rpm -e 关键字  【-nodeps】:忽略查询

rpm -ivh 完整名称

rpm -Uvh  完整名称

rpm  -qf  文件路径   :查询指定文件属于哪个包

举例:使用rpm安装lynx(一个纯命令的浏览器)

1、由于光盘中就有该包,所以查看光盘的挂载情况

2、安装

3、测试

参考:链接

1、下载

链接

MySQL Cluster 是oracle自己搞的集群版的(集成了一些开源工具和增值服务)

解压后包含:

我们只需下载server包client包

2、清理环境

centos7会自带一个mariadb

查看是否已安装

rpm -qa |grep -i mysql

rpm -qa |grep -i mariadb(centos7默认系统自带的)

rpm -e 加上包名,把mariadb包清掉

若用rpm删除失败,提示有依赖关系的软件需要安装

rpm删除时如果有依赖关系,可以用 yum remove + 包名 来删除mariadb

3、安装

rpm –ivh + 包安装所需要的包

例如:

rpm -ivh MySQL-client-5.6.42-1.el7.x86_64.rpm

rpm -ivh MySQL-server-5.6.42-1.el7.x86_64.rpm

若出现错误:

yum install libaio

原因:
缺少依赖包autoconf
解决办法:
通过yum安装autoconf

yum -y install autoconf

4、查看默认密码

server安装成功后会输出一些信息,例如:默认的密码

........

A RANDOM PASSWORD HAS BEEN SET FOR THE MySQL root USER !

You will find that password in '/root/.mysql_secret'.

........

这表明mysql安装时给root设置了一个随机的初始密码:

密码的位置放在'/root/.mysql_secret'文件中

查看该文件,可以看到我在重装mysql时新生成一个随机密码:

5、修改密码

参考:链接

1、首先登录MySQL。

2、连接权限数据库:use mysql; 。

若出现:

SET PASSWORD = PASSWORD('123456');

3、改密码:update user set password=password("shapolang") where user="root";(别忘了最后加分号) 。

4、刷新权限(必须步骤):flush privileges;
重新登录,输入新密码shapolang就ok了;

6、开启服务和登录

service mysql start 

mysql -u root -p

yum安装

优点:安装简单、快捷

缺点:完全丧失自定义性

yum常见命令:

yum list :列出当前已经安装和可以安装的软件包

yum 【-y】 install 软件包  :安装软件包 (-y表示允许不再确认)

yum  【-y】 update  【包名】:更新指定的包,不指定则更新全部

yum【-y】 remove  包名:卸载指定的包

举例:卸载火狐浏览器

安装mysql:

yum install mysql-server    :安装mysql服务器端

mysql初始化

service mysqld start   :开启mysql服务

查看默认端口号: netstat -tnlp

初始化:mysql_secure_installation

安装完成:

基本操作

服务管理

service mysqld start / stop / restart   :开始 / 停止 / 重启

进入和退出

进入:mysql -u 用户名 -p

退出:exit

默认目录

数据库存储目录:/var/lib/mysql

配置文件:/etc/my.cnf

库操作

大小写均可

show database;  :显示当前所有数据库

create database   数据库名;:创建数据库

drop  database   数据库名;:删除数据库

use 库名;  :切换数据库

表操作

show tables;  :显示当前数据库中所有的表名

create table  表名    :创建一个表

{ 

  列名称1 数据类型  【not null  auto_increment】

  ................

  primary key(主键)

};

常见数据类型:int、char、varchar(不定长字符)

主键:主键不能重复

desc 表名;   :描述一个数据表(表结构)

drop  table  【if exists】表名;   :删除一个数据表

举例:在test数据库中创建sh表:

增加记录

语法1:insert into 表名 values(值1,值2,.........);

语法2:insert into 表名 (列1,列2,.........)values(值1,值2,.........);

更新记录

update 表名 set  列名1 = 新值1,..... where 列名 = 某值;

查询记录

select 列名称 from 表名称  where 条件;

select * from 表名  where 条件;

删除记录

delete from 表名 where 列名 = 值;

备份

全部备份:mysqldump -uroot -p密码 -A > 备份文件路径

指定库备份:mysqldump -uroot -p密码  库名  > 备份文件路径

多个库备份:mysqldump -uroot -p密码  --databases  库名1 库名2....  > 备份文件路径

案例:每分钟自动备份一次test库

编写shell脚本:

创建一个计划任务:

完成:

还原

举例:还原表sh

1、删除表sh

2、恢复表

远程管理

1、B/S管理工具:PMA(phpmyadmin使用链接

2、C/S工具:Navicat

常见错误

mysql中出现乱码如何处理?

设置mysql链接字符集:set names utf8;      【三码一致,服务器端+传输过程中+客户端

在使用yum安装软件时,遇到:Another app is currently holding the yum lock; waiting for it to exit...

可以通过强制关掉yum进程:rm -f /var/run/yum.pid

初次远程连接时:2003

1、先进入数据库选择mysql数据库

2、执行:select host,user from user;

3、将其中一个记录的host值改为“%”

4、权限设置

如果想root用户使用password从任何主机连接到mysql服务器的话:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

5、刷新权限表或重启mysql服务

刷新权限表:flush privileges;

6、测试

执行yum命令时报错“File contains no section headers”

解决办法:

1、删除yum.repos.d目录下所有文件

rm -f /etc/yum.repos.d/*

2、重新下载阿里yum

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

3、清理缓存

yum clean all

4、测试下载安装

yum install gcc

成功!

首次远程时:1130

问题:没有登陆权限

原因:mysql服务器 root 默认只允许 localhost 也就是 127.0.0.1 连接

方法:修改 root 用户的任何ip都可以链接,就好了

1、使用 mysql 这个库
use mysql;
2、允许任何ip链接
update user set host = '%' where user ='root';
3、刷新权限
flush privileges;
4、重启服务
systemctl restart mysql

卸载并安装

查看mysql是否安装

rpm -qa|grep mysql

卸载mysql

1、rpm包安装方式卸载
删除命令:

rpm -e –nodeps 包名

2、yum安装方式下

卸载mysql

yum remove 包名

查看mysql的其它依赖:

rpm -qa | grep -i mysql

3、卸载依赖

yum remove mysql-libs
yum remove mysql-server
yum remove perl-DBD-MySQL
yum remove mysql

安装 MariaDB

1、查看系统中是否已安装 MariaDB

rpm -qa | grep -i mariadb

返回结果类似如下内容,则表示已存在 MariaDB

为避免安装版本不同造成冲突,请执行以下命令移除已安装的 MariaDB

yum -y remove 包名

2、在 /etc/yum.repos.d/ 下创建 MariaDB.repo 文件

vi /etc/yum.repos.d/MariaDB.repo
# MariaDB 10.4 CentOS repository list - created 2019-11-05 11:56 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.4/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

按 “Esc”,输入 “:x”,保存文件并返回

3、安装 MariaDB

yum -y install MariaDB-client MariaDB-server

4、启动 MariaDB 服务

systemctl start mariadb

5、设置 MariaDB 为开机自启动

systemctl enable mariadb

6、验证 MariaDB 是否安装成功

systemctl enable mariadb

7、初始化

mysql_secure_installation

 

linux:mysql的更多相关文章

  1. Linux:mysql编译安装

    mysql安装包有源码包和二进制包.源码包安装时需要编译.二进制包安装时不需要编译. 二进制格式的包名字很长,都带有版本号.适应平台.适应的硬件类型等,而源码格式仅仅就是一个版本号的tar包. 源代码 ...

  2. MySQL:MySQL的安装

    一.Linux:MySQL的源码安装 1.安装前的准备 在安装之前需要安装一下必备的包和工具 gcc/g++:MySQL5.6开始,需要使用g++进行编译. cmake:MySQL5.5开始,使用cm ...

  3. .Neter玩转Linux系列之六:Linux下MySQL的安装、配置、使用

    一.Linux安装MySQL (1)下载安装包:https://dev.mysql.com/downloads/mysql/ (2)解压并安装 命令:tar zxvf 文件名 解压完成之后,重名一下文 ...

  4. 回顾:Linux环境 Mysql新建用户和数据库并授权

    回顾:Linux环境 Mysql新建用户和数据库并授权 一.新建用户 //登录Mysql @>mysql -u root -p @>密码 //创建用户 mysql> insert i ...

  5. linux学习之centos(三):mysql数据库的安装和配置

    前言:mysql简介 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库, ...

  6. Linux下mysql出错:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

    安装: 1.新开的云服务器,需要检测系统是否自带安装mysql # yum list installed | grep mysql 2.如果发现有系统自带mysql,果断这么干 # yum -y re ...

  7. 远程登陆linux连接mysql root账号报错:2003-can't connect to MYSQL serve(转)

    远程连接mysql root账号报错:2003-can't connect to MYSQL serve 1.远程连接Linux系统,登录数据库:mysql -uroot -p(密码) 2.修改roo ...

  8. Linux:数据库服务(Mysql安装及链接、远程链接、genelog)

    yum  search  +  服务:查询服务是否存在: yum  remove  +  服务:卸载服务: 使用 service 操作服务时,服务的名称后要加上字符 d,如启动:service  my ...

  9. linux安装mysql服务分两种安装方法:

    linux安装mysql服务分两种安装方法: ①源码安装,优点是安装包比较小,只有十多M,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: ②使用官方编译好的二进制文件安装,优点是安装速度 ...

随机推荐

  1. 爱心跳动效果 CSS实现

    爱心跳动效果 CSS实现 实现效果 砰砰砰 实现原理 通过动画改变每个元素的高度,从而实现每个元素高度变化的效果,为了使每个元素依次跳动,给每个元素添加一定的延时效果,使得从效果元素依次跳动 代码分析 ...

  2. Git 分支基本命令

    1. 查看当前分支 (git branch) 2. 创建分支 (git branch 分支名) 3.切换分支(git checkout 分支名) 4.分支上的常规操作 5.分支的合并 (git che ...

  3. 在vue中如何使用WebSocket 以及nginx代理如何配置WebSocket

    WebSocket WebSocket是一种网络传输协议,可在单个TCP连接上进行全双工通信.浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并进行双向数据传输. 浏览器支持情况 现 ...

  4. [leetcode] 875. 爱吃香蕉的珂珂(周赛)

    875. 爱吃香蕉的珂珂 这题时间要求比较严格... 首先,将piles排序,然后二分查找. 总之,答案K肯定位于piles[?]piles[?+1]或者1piles[0]之间 所以我们先二分把?找到 ...

  5. Elasticsearch分页查询

    global index global CLIENT index = "guajibao-ipused-2019.10.13" CLIENT = Elasticsearch(hos ...

  6. 【RMAN】使用RMAN备份将数据库不完全恢复到指定时间点

    RMAN作为Oracle强大的备份恢复工具,可以协助我们恢复数据库到指定时间点,这便是Oracle不完全恢复的一种体现,通过这种方法可以找回我们曾经丢失的数据.这里以找回误TRUNCATE表数据为例给 ...

  7. Sql server 多列去重复值,相同的只显示一条数据

    CREATE TABLE #tp( headerNo VARCHAR(10), machineNO VARCHAR(10), descrption nVARCHAR(20), artNo VARCHA ...

  8. Git操作_本地仓库第一次推送到远程仓库

    实现目的: 本地已经安装好Git,pycham已经有一个项目,打算放到Git远程仓库 前提条件:本地配置好了公钥,且GIT 上关联好公钥,步骤如下: git本地仓库连接github操作步骤:windo ...

  9. Django(58)viewsets视图集详解

    前言 ViewSet 只是一种基于类的视图,它不提供任何方法处理程序(如 .get()或.post()),而是提供诸如.list()和 .create() 之类的操作. ViewSet 的方法处理程序 ...

  10. JVM快速入门(上)

    前言 根据狂神说的JVM快速入门做了以下笔记,讲的很好的一个博主,给小伙伴们附上视频链接狂神说JVM快速入门    接下来我按照他所讲的内容给大家记录一些重点! 一.JVM体系结构 .java经由ja ...