一.下载

http://dev.mysql.com/downloads/mysql/

选择对应的版本,这里选择“Linux-Generic”

以64位系统为例,这里需要下载如下两个文件:

MySQL-client-5.6.10-1.linux_glibc2.5.x86_64.rpm

MySQL-server-5.6.10-1.linux_glibc2.5.x86_64.rpm

二.安装

root用户安装

在下载路径下执行命令:

rpm -qa | grep mysql:查询系统是否安装了mysql包

如果安装先卸载,因为系统自带的基本都是老版本。

rpm -e mysql-libs-5.1.66-2.el6_3.x86_64 --nodeps:卸载mysql包

先安装服务

rpm -ivh MySQL-server-5.6.10-1.linux_glibc2.5.x86_64.rpm

rpm -ivh --replacepkgs --replacefiles MySQL-server-5.6.10-1.linux_glibc2.5.x86_64.rpm

--replacepkgs:如果已经安装,可以使用该选项覆盖安装

--replacefiles:如果遇到文件冲突,使用该命令可以解决

接着安装客户端

rpm -ivh  MySQL-client-5.6.10-1.linux_glibc2.5.x86_64.rpm

三.配置启动文件

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

vi /etc/my.cnf

[mysqld]下增加如下信息:

port= 3306  #端口

default-character-set=utf8 #字符编码  5.5以上版本要配置为character-set-server=utf8

wait_timeout=288000  # 链接超时,默认为8小时,单位为秒

四.启动与关闭mysql

/etc/init.d/mysql start/stop

或者

service mysql start/stop/restart

mysql安装完成默认就是会随系统启动的,可以使用如下命令查看mysql的运行级别:

chkconfig --list mysql

修改mysql的运行级别为35启动:

chkconfig --level 35 mysql on

五.登录mysql

第一次登录使用root的默认密码,安装完成后默认root密码保存在当前root用户的home/.mysql_secret中

mysql -u root -p

登录成功够必须先修改密码,如下:

mysql>SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpwd');

六.开放访问权限

登录后分别执行如下命令,开放root的远程登录权限,需要在iptables中开放3306端口

mysql>grant all PRIVILEGES on *.* to root@'%' identified by 'newpwd';

mysql>grant all PRIVILEGES on *.* to root@'localhost' identified by 'newpwd';

mysql>flush privileges;

七.创建新的数据库

mysql>create database newdbtest;

mysql>use newdbtest;(打开库)

八.创建新的用户并授权

mysql> grant all PRIVILEGES on newdbtest.* to newdbuser@'%' identified by '123456';

九.取消root远程登录权限

mysql>revoke all PRIVILEGES on *.* from root@'%' identified by 'newpwd';

十.备份与恢复

备份newdbtest :mysqldump -p --opt newdbtest > back_newdbtest

Enter password: root密码

恢复newdbtest :mysql -u root -p newdbtest  < back_newdbtest

Enter password: root密码

十一.取消大小写区分

Linux下mysql安装完后是默认:区分表名的大小写,不区分列名的大小写;

用root帐号登录后,在/etc/my.cnf中的[mysqld]后添加lower_case_table_names=1,重启MYSQL服务,这时已设置成功:不区分表名的大小写;
lower_case_table_names参数详解:
lower_case_table_names=0
其中0:区分大小写,1:不区分大小写

MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:
1、数据库名与表名是严格区分大小写的;
2、表的别名是严格区分大小写的;
3、列名与列的别名在所有的情况下均是忽略大小写的;
4、变量名也是严格区分大小写的;
MySQL在Windows下都不区分大小写。

十二.开启慢查询和bin-log日志

在/etc/my.cnf中的[mysqld]后添加如下内容:

long_query_time=2 #慢查询记录超过的时间,这里只2秒

slow-query-log=1 #开启慢查询日志

log_queries_not_using_indexes=1 #记录下没有使用索引的查询语句

log_bin=mysql-bin #开启bin-log日志

注:5.6以后的版本与之前的版本配置参数上略有不同,可以使用如下命令查看支持的参数列表:

mysqld --verbose --help

可以使用mysqldumpslow命令查看慢查询日志信息:

mysqldumpslow -s c -t 20 host-slow.log

mysqldumpslow -s r -t 20 host-slow.log

上述命令可以看出访问次数最多的20个sql语句和返回记录集最多的20个sql。

mysqldumpslow -t 10 -s t -g “left join” host-slow.log这个是按照时间返回前10条里面含有左连接的sql语句。

十三.意外被锁

由于某种原因导致mysql意外停止,比如直接杀掉了myslq的进程,这样会导致mysql被锁:

[root@localhost ~]# service mysql status

MySQL is not running, but lock file (/var/lock/subsys/mysql) exists[失败]

解决方法是,删除/var/lock/subsys/mysql文件即可。

常用mysql命令:

1.登录

mysql -u用户名 -p密码 -h服务器IP地址 数据库 :登录并打开指定数据库,但这样做的缺点是密码要明文输入。

2.登录后命令

mysql> status;       查看数据库状态

mysql> select version();        查看MySQL的版本号

mysql> select current_date();        查看MySQL的当前日期

mysql> select version(),current_date(); 同时查看MySQL的版本号和当前日期

mysql> show databases;            显示当前存在的数据库

mysql> use mysql            选择使用数据库(USE和QUIT命令不需要分号结束)

mysql> select database();        显示当前选择的数据库

mysql> show tables;            显示当前数据库中存在的表

mysql> select * from db;        显示表(db)的内容

mysql> describe[desc] mytable;        显示表的结构

或show columns from 表名;

mysql> select user,host,password from mysql.user;  查询用户信息

mysql> source mysql.sql;   执行sql脚本

linux下mysql的安装的更多相关文章

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

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

  2. linux下Mysql 的安装、配置、数据导入导出

    MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),虽然功能未必很强大,但因它的免费开源而广受欢迎. 这次,接着上一篇<CentOs minimal安装和开发环境部署>,讲下L ...

  3. Window/Linux下Mysql的安装步骤

    Windows下Mysql安装教程 首先讲一下Windows环境下安装Mysql,我使用的安装包版本是mysql-8.0.26-winx64 下载地址:MySQL下载 1.点击上面的下载地址得到zip ...

  4. linux 下mysql的安装,并设置必要的密码

    首先,我使用的是redhat linux ,版本号为: [root@localhost init.d]# cat /proc/version Linux version - (bhcompile@po ...

  5. Linux下mysql的安装和使用(C语言)

    1 mysql的安装 我使用的ubuntu在线安装,非常简单,命令为: sudo apt-get install mysql-client mysql-server 2 mysql命令集合 网络太多了 ...

  6. (转)linux下mysql的安装过程

    最近在linux安装了mysql,根据网上收集的资料和个人的操作过程,大概做了个整理,以便以后进行参考回顾. 1.下载mysql-5.1.36.tar.gz,并且解压. tar -xzvf mysql ...

  7. Linux下MySQL的安装和启动(转载)

    原文链接:http://www.linuxidc.com/Linux/2016-07/133234.htm 一.MySQL各类安装方法的比较 在Linux系统下,MySQL有3种主要的安装方式,分别是 ...

  8. linux 下MySQL的安装

    一.安装MySQL   1.下载源码包     从mysql官网上下载linux下的source包mysql-5.0.51b.tar.gz,注意是下载GNU tar格式的,不是rpm包.    2.解 ...

  9. (0.2)linux下Mysql的安装配置与管理入门(目录篇)

    本章学习内容: 1.基于Linux平台的Mysql项目场景介绍 1.1.互联网各类网站.购物网站.门户网站.博客系统.IDC,云平台,VPS,虚拟主机空间,论坛,嵌入式. 2.mysql数据库运行环境 ...

随机推荐

  1. Notification与多线程

    来源:南峰子(@南峰子_老驴 ) 链接:http://t.cn/R5swQcR 前几天与同事讨论到Notification在多线程下的转发问题,所以就此整理一下. 先来看看官方的文档,是这样写的: I ...

  2. 批处理,修改环境变量path的方法(加环境变量)

    方法一:批处理中,修改环境变量,一次性有效(也就是在当前的脚本中有效) CMD中运行 set path==%path%;d:/mypath 用 set path可以查看,当前的环境变量 方法二 :批处 ...

  3. Spring 注解回顾

    [copy] 参考资料 赵蒙

  4. Linux - 扩展

    每次输入命令行按下 Enter 键时,bash 都会在执行命令之前对文本进行多重处理.比如 "cd ~" 中的 "~" 的会被识别为当前用户的主目录.产生这个结 ...

  5. servlet(一)

    百度百科是这样的: Servlet 是在服务器上运行的小程序.这个词是在 Java applet 的环境中创造的.虽然后者已很少被使用,但 Servlet 却发展的很好.是一般面试都会常考的知识. 维 ...

  6. MSSQL生成整个数据库的SQL脚本的工具 scptxfr.exe

    scptxfr.exe的路径要正确declare @cMd varchar(1000)set @cmd = 'master.dbo.xp_cmdshell ' + '''c:\"Micros ...

  7. 写一个最简单的 Server

    import java.net.*;import java.io.*;public class Server{ public static void main(String[] args) throw ...

  8. 初学HTML5系列二:HTML5新增的事件属性

    Window事件属性: 属性 值 描述 onafterprint  script 文档打印之后运行的脚本. 属性发生于用户设置页面打印并且打印对话框已出现之后. onbeforeprint  scri ...

  9. SqlServer中的merge操作,相当地风骚

    今天在一个存储过程中看见了merge这个关键字,第一个想法是,这个是配置管理中的概念吗,把相邻两次的更改合并到一起.后来在technet上搜索发现别有洞天,原来是另外一个sql关键字,t-sql的语法 ...

  10. 检测SqlServer服务器IO是否瓶颈

    通过性能监视器监视 Avg. Disk Queue Length   小于2 Avg. Disk sec/Read , Avg. Disk sec/Write  小于10ms 可以用数据收集器定时收集 ...