MySQL高级学习笔记(一):mysql简介、mysq linux版的安装(mysql 5.5)
文章目录
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)的更多相关文章
- 尚硅谷MySQL高级学习笔记
目录 数据库MySQL学习笔记高级篇 写在前面 1. mysql的架构介绍 mysql简介 mysqlLinux版的安装 mysql配置文件 mysql逻辑架构介绍 mysql存储引擎 2. 索引优化 ...
- MySQL高级学习笔记(四):索引优化分析
文章目录 性能下降 SQL慢 执行时间长 等待时间长 查询语句写的烂 查询数据过多 关联了太多的表,太多join 没有利用到索引 单值 复合 服务器调优及各个参数设置(缓冲.线程数等)(不重要DBA的 ...
- MySQL高级学习笔记
1. 变量相关 临时变量 -- 定义在函数体或存储过程中的变量 -- 用法在讲函数时会提到 用户变量,也称会话变量 -- 用户变量只对当前连接用户有效,其他连接用户无法访问 -- 使用 @ 标识符声明 ...
- MySQL高级学习笔记(七):MySql主从复制
文章目录 复制的基本原理 slave会从master读取binlog来进行数据同步 三步骤+原理图 复制的基本原则 复制的最大问题 一主一从常见配置 mysql版本一致且后台以服务运行(双方能够pin ...
- MySQL高级学习笔记(二):mysql配置文件、mysql的用户与权限管理、mysql的一些杂项配置
文章目录 mysql配置文件 二进制日志log-bin 错误日志log-error 数据文件 两系统 Myisam存放方式 innodb存放方式 如何配置 mysql的用户与权限管理 MySQL的用户 ...
- 【JAVAWEB学习笔记】27_Redis:在Linux上的安装、Jedis和常用命令
一.Redis简介 1.关于关系型数据库和nosql数据库 关系型数据库是基于关系表的数据库,最终会将数据持久化到磁盘上,而nosql数据 库是基于特殊的结构,并将数据存储到内存的数据库.从性 ...
- MySQL高级学习笔记(三):Mysql逻辑架构介绍、mysql存储引擎
文章目录 Mysql逻辑架构介绍 总体概览 总体概览 mysql存储引擎 查看命令 看你的 mysql 现在已提供什么存储引擎 : 看你的 mysql 当前默认的存储引擎 : 各个引擎简介 MyISA ...
- MySQL高级学习笔记(六):MySql锁机制
文章目录 概述 定义 生活购物 锁的分类 从对数据操作的类型(读\写)分 从对数据操作的粒度分 三锁 表锁(偏读) 特点 案例分析 建表SQL 加读锁 加写锁 结论 如何分析表锁定 行锁(偏写) 特点 ...
- MySQL高级学习笔记(五):查询截取分析
文章目录 慢查询日志 是什么 怎么玩 说明 查看是否开启及如何开启 默认 开启 那么开启了慢查询日志后,什么样的SQL才会记录到慢查询日志里面呢? Case 配置版 日志分析工具mysqldumpsl ...
随机推荐
- jmeter添加自定义扩展函数之if判断
1,打开eclipse,新建maven工程,在pom中引用jmeter核心jar包,具体请看---https://www.cnblogs.com/guanyf/p/10863033.html---,这 ...
- python unittest 之mock
1.什么是mockunittest.mock是一个用于在Python中进行单元测试的库,Mock翻译过来就是模拟的意思,顾名思义这个库的主要功能是模拟一些东西.它的主要功能是使用mock对象替代掉指定 ...
- Vue&webpack入门实践
目录 1. 下载安装Vue 2. Vue 2.1 Vue要素 2.2 指令 2.3 组件化 2.4 vue-router 3. webpack 3.1 webpack简介 3.2 四个核心概念 3.3 ...
- Java学习之包
一.包:就是类的命名空间(在文件系统中的表现形式就是文件夹) 二.代码编写规则 1.写在程序文件的第一行 2.格式:package 包名[.包名1.包名2......] 类的全名称 包名.类名 例如: ...
- python深浅拷贝的理解和区分
import copy a1 = ['s1','s2','s3'] #可变数据类型 a = [1,2,a1] b = a a1.append('s4') #浅拷贝 c = copy.copy(a) # ...
- VLAN基础配置及Access接口 实验1
1.Access接口 是交换机上与PC机上相连的端口 2.当主机向交换机发送数据帧时,经过的Access口会将该帧加一个与自己PVID一致的VLAN标签 当交换机的Access口要发送给PC机一个带有 ...
- MySQL数据库时区问题导致java程序无法连接数据库
转载自https://blog.csdn.net/man_zuo/article/details/81027934 先把报错信息贴上, The server time zone value '???ú ...
- list中的所有值转换为字符串,以及list拼接成一个字符串
import stringlis=[1,2,3,'abc']fw=open('hello.txt','w',encoding='utf-8')# print(''.join(str(lis).repl ...
- Netty 如何实现心跳机制与断线重连?
作者:sprinkle_liz www.jianshu.com/p/1a28e48edd92 心跳机制 何为心跳 所谓心跳, 即在 TCP 长连接中, 客户端和服务器之间定期发送的一种特殊的数据包, ...
- 后端数据推送-EventSource
服务器发送事件(以下简称SSE)是HTML 5规范的一个组成部分,可以实现服务器到客户端的单向数据通信.通过SSE,客户端可以自动获取数据更新,而不用重复发送HTTP请求.一旦连接建立,“事件”便会自 ...