zoukankan      html  css  js  c++  java
  • linux下mysql的安装

    一.下载

    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脚本

  • 相关阅读:
    Win10或Win8下ObjectARX2015 Wizard向导创建项目失败解决方法
    对用友二次开发的初次认识
    我对asp.net管道模型的理解
    wblockCloneObjects 写块克隆的使用
    acedCommand 之使用镜像命令
    MFC之动态调用自己写的类库中的类的成员方法
    objectarx 天正的墙转梁线
    objectarx 之让用户自定义插件命令
    MFC之多字节和宽字节的总结
    MFC之使用blat发送邮件
  • 原文地址:https://www.cnblogs.com/jiligalaer/p/4428980.html
Copyright © 2011-2022 走看看