MySQL简介

概述

MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。

MySQL 是一种关联数据库管理系统,将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

Mysql 是开源的,所以你不需要支付额外的费用。

Mysql 是可以定制的,采用了 GPL 协议,你可以修改源码来开发自己的 Mysql 系统。

Mysql 支持大型的数据库。可以处理拥有上千万条记录的大型数据库。

MySQL 使用标准的 SQL 数据语言形式。

Mysql 可以允许于多个系统上,并且支持多种语言。这些编程语言包括 C 、 C++ 、 Python 、 Java 、 Perl 、 PHP 、 Eiffel 、 Ruby 和 Tcl 等。

MySQL 支持大型数据库,支持 5000 万条记录的数据仓库, 32 位系统表文件最大可支持 4GB , 64 位系统支持最大的表文件为 8TB 。

mysql高手是怎样炼成的

数据库内部结构和原理

数据库建模优化

数据库索引建立

SQL语句优化

SQL编程

mysql服务器的安装配置

数据库的性能监控分析与系统优化

各种参数常量设定

主从复制

分布式架构搭建、垂直切割和水平切割

数据迁移

容灾备份和恢复

shell或python等脚本语言开发

对开源数据库进行二次开发

mysq linux版的安装(mysql 5.5)

下载地址

官网下载地址:http://dev.mysql.com/downloads/mysql/





拷贝&解压缩

检查工作

检查当前系统是否安装过mysql

执行安装命令前,先执行查询命令

rpm -qa|grep mysql

如果存在 mysql-libs 的旧版本包如下:



请先执行卸载命令: rpm -e --nodeps mysql-libs

检查/tmp文件夹权限

由于mysql安装过程中,会通过mysql用户在/tmp目录下新建tmp_db文件,所以请给/tmp较大的权限

执行 :chmod -R 777 /tmp

安装

在 mysql 的安装文件目录下执行:

rpm -ivh MySQL-server-5.5.54-1.linux2.6.x86_64.rpm

rpm -ivh MySQL-client-5.5.54-1.linux2.6.x86_64.rpm

查看MySQL安装版本

或者可以执行 mysqladmin --version命令,类似java -version如果打出消息,即为成功。



通过vim 查看 mysql组 和mysql组

mysql服务的启+停

启动:

关闭:

首次登录

安装完成后会提示出如下的提示:

在mysql首次登录前要给 root 账号设置密码

启动服务后,执行命令

/usr/bin/mysqladmin -u root password ‘123123’

然后通过 mysql -uroot -p123123进行登录

MySQL的安装位置

在linux下查看安装目录 ps -ef|grep mysql

参数 路径 解释 备注
–basedir /usr/bin 相关命令目录 mysqladmin mysqldump等命令
–datadir /var/lib/mysql/ mysql数据库文件的存放路径
–plugin-dir /usr/lib64/mysql/plugin mysql插件存放路径
–log-error /var/lib/mysql/jack.atguigu.err mysql错误日志路径
–pid-file /var/lib/mysql/jack.atguigu.pid 进程pid文件
–socket /var/lib/mysql/mysql.sock 本地连接时用的unix套接字文件
/usr/share/mysql 配置文件目录 mysql脚本及配置文件
/etc/init.d/mysql 服务启停相关脚本

在 linux 下查看安装目录 ps -ef|grep mysql

自启动mysql服务

修改配置文件位置

因为将来配置主从配置,集群之类的,容易出现问题,所以,保存一份默认的配置文件,修改默认配置文件的位置

拷贝:



注意:

当前的5.5版本

cp   /usr/share/mysql/my-huge.cnf    /etc/my.cnf

5.6版本

cp   /usr/share/mysql/my-default.cnf    /etc/my.cnf

/etc/my.cnf是默认读取的配置文件,刚安装的时候,是不会有这个文件的,没有就会用默认的,有的话就用/etc/my.cnf

修改字符集问题

尝试插入输入:

insert into user values(2,'张三');
select * from user;

+------+--------+
|id	   |name	|
+------+--------+
|1     |z3		|
|2     |??		|
+------+--------+

原因是字符集问题

1 查 看字符集

show variables like ‘character%’;

show variables like ‘%char%’;

看看出现的结果:



character_set_database和character_set_server都是 latinl(拉丁)



默认的是客户端和服务器都用了latin1,所 以会乱码。

2 修改my.cnf

在/usr/share/mysql/ 中找到my.cnf的配置文件,

拷贝其中的my-huge.cnf 到 /etc/ 并命名为my.cnf

mysql 优先选中 /etc/ 下的配置文件

然后修改my.cnf:

[client]

default-character-set=utf8

[mysqld]

character_set_server=utf8

character_set_client=utf8

collation-server=utf8_general_ci

[mysql]

default-character-set=utf8





3、重新启动mysql

service mysql stop
service mysql start
user db01
insert into user values(2,'张三3');
select * from user;
+------+--------+
|id	   |name	|
+------+--------+
|1     |z3		|
|2     |??		|
|2     |??3		|
+------+--------+

因为我是在原库之后修改的字符集,所以原来的还不是utf-8。

结论:

原库的设定不会发生变化,参数修改只对新建的数据库生效

4、已生成的库表字符集如何变更

修改数据库的字符集

mysql> alter database mytest character set ‘utf8’;

修改数据表的字符集

mysql> alter table user convert to character set ‘utf8’;

但是原有的数据如果是用非’utf8’编码的话,数据本身不会发生改变。

MySQL高级学习笔记(一):mysql简介、mysq linux版的安装(mysql 5.5)的更多相关文章

  1. 尚硅谷MySQL高级学习笔记

    目录 数据库MySQL学习笔记高级篇 写在前面 1. mysql的架构介绍 mysql简介 mysqlLinux版的安装 mysql配置文件 mysql逻辑架构介绍 mysql存储引擎 2. 索引优化 ...

  2. MySQL高级学习笔记(四):索引优化分析

    文章目录 性能下降 SQL慢 执行时间长 等待时间长 查询语句写的烂 查询数据过多 关联了太多的表,太多join 没有利用到索引 单值 复合 服务器调优及各个参数设置(缓冲.线程数等)(不重要DBA的 ...

  3. MySQL高级学习笔记

    1. 变量相关 临时变量 -- 定义在函数体或存储过程中的变量 -- 用法在讲函数时会提到 用户变量,也称会话变量 -- 用户变量只对当前连接用户有效,其他连接用户无法访问 -- 使用 @ 标识符声明 ...

  4. MySQL高级学习笔记(七):MySql主从复制

    文章目录 复制的基本原理 slave会从master读取binlog来进行数据同步 三步骤+原理图 复制的基本原则 复制的最大问题 一主一从常见配置 mysql版本一致且后台以服务运行(双方能够pin ...

  5. MySQL高级学习笔记(二):mysql配置文件、mysql的用户与权限管理、mysql的一些杂项配置

    文章目录 mysql配置文件 二进制日志log-bin 错误日志log-error 数据文件 两系统 Myisam存放方式 innodb存放方式 如何配置 mysql的用户与权限管理 MySQL的用户 ...

  6. 【JAVAWEB学习笔记】27_Redis:在Linux上的安装、Jedis和常用命令

    一.Redis简介 1.关于关系型数据库和nosql数据库 关系型数据库是基于关系表的数据库,最终会将数据持久化到磁盘上,而nosql数据     库是基于特殊的结构,并将数据存储到内存的数据库.从性 ...

  7. MySQL高级学习笔记(三):Mysql逻辑架构介绍、mysql存储引擎

    文章目录 Mysql逻辑架构介绍 总体概览 总体概览 mysql存储引擎 查看命令 看你的 mysql 现在已提供什么存储引擎 : 看你的 mysql 当前默认的存储引擎 : 各个引擎简介 MyISA ...

  8. MySQL高级学习笔记(六):MySql锁机制

    文章目录 概述 定义 生活购物 锁的分类 从对数据操作的类型(读\写)分 从对数据操作的粒度分 三锁 表锁(偏读) 特点 案例分析 建表SQL 加读锁 加写锁 结论 如何分析表锁定 行锁(偏写) 特点 ...

  9. MySQL高级学习笔记(五):查询截取分析

    文章目录 慢查询日志 是什么 怎么玩 说明 查看是否开启及如何开启 默认 开启 那么开启了慢查询日志后,什么样的SQL才会记录到慢查询日志里面呢? Case 配置版 日志分析工具mysqldumpsl ...

随机推荐

  1. Windows 08 R2_创建AD DS域服务(图文详解)

    目录 目录 Active Directory概念 创建第一个AD域控制器 搭建DNS服务器 使用Windows窗口程序创建AD域控制器 AD与LDAP的关系 使用Powershell来创建ADDS域控 ...

  2. 测开之路十六:@classmethod与@staticmethod

    @classmethod 类方法 和属性一样,所有实例化的对象都共享类方法 @staticmethod 静态方法,可以理解为和类没有任何关系,只是放在了类里面 参数可以任意定义,根据自己的定义传参,也 ...

  3. Linux下实现MySQL数据库每天定时自动备份

    使用MySQL自带的备份工具+ crontab 的方式来实现备份 1.查看磁盘挂载信息(选一个容量合适的) #df -h 2.创建备份目录 为了方便,在/home保存备份文件: cd /home/ga ...

  4. [Codeforces 729F] Financiers Game

    题意: 两个人分别从长度为n的数列的两端开始取数,如果前一 个人取了k个数,后一个人必须取k或k+1个. 第一个人最 开始可以取1个或2个,不能操作时结束. 两个人都希望自 己取到的数字之和尽量大,并 ...

  5. 利用select单线程点对点聊天

    select的优点与使用方法 select用单线程的方法遍历所有待读写的I/O接口, 当有接口可用时就会返回. select可设置电脑阻塞或非阻塞. 特别注意: 每次select前都要重新初始化集合和 ...

  6. websocket(python)

    1.websocket-server https://github.com/google/pywebsocket git clone https://github.com/google/pywebso ...

  7. linux---postgresql的用户角色权限

    PostgreSQL是通过角色来管理数据库访问权限的,我们可以将一个角色看成是一个数据库用户,或者一组数据库用户.角色可以拥有数据库对象,如表.索引,也可以把这些对象上的权限赋予其它角色,以控制哪些用 ...

  8. cpanle/Apache 强制http跳转到https

    因为租的虚拟主机是使用Cpanel,按照网上找的文章,处理的步骤如下: 打开Cpanel面板-文件管理器-设置(在页面的右上角)-勾选显示隐藏文件(dotfiles)-save . 找到网站所在的目录 ...

  9. CNN基础二:使用预训练网络提取图像特征

    上一节中,我们采用了一个自定义的网络结构,从头开始训练猫狗大战分类器,最终在使用图像增强的方式下得到了82%的验证准确率.但是,想要将深度学习应用于小型图像数据集,通常不会贸然采用复杂网络并且从头开始 ...

  10. PID算法知识点博文收藏记录

    https://blog.csdn.net/Uncle_GUO/article/details/51367764 https://blog.csdn.net/HandsomeHong/article/ ...