一、MySQL的安装

1.在线安装:

命令:sudo apt-get install mysql-server

在安装的过程中将提示为“root”用户设置密码,输入自己的密码即可,安装按成后已自动配置好环境变量,可直接使用mysql命令。

2.下载MySQL安装包离线安装(我下载的版本是:mysql-5.5.25-linux2.6-x86_64.tar.gz):

1. groupadd mysql
  2. mkdir /home/mysql
  3. useradd -g mysql -d /home/mysql mysql
  4. copy mysql-5.5.25-linux2.6-x86_64.tar.gz到/usr/local目录
  5. 解压:tar zxvf mysql-5.5.25-linux2.6-x86_64.tar.gz
  6. ln -s mysql-5.5.25-linux2.6-x86_64 mysql
  7. cd /usr/local/mysql
  8. chown -R mysql .
  9. chgrp -R mysql .
  10. scripts/mysql_install_db --user=mysql (一定要在mysql目录下执行,注意输出的文字,里边有修改root密码和启动mysql的命令)
  11. 为root设置密码: ./bin/mysqladmin -u root password 'passw0rd'

二、MySQL的配置和管理
1. 修改mysql最大连接数:

cp support-files/my-medium.cnf ./my.cnf,vim my.cnf,增加或修改max_connections=1024
  关于my.cnf:mysql按照下列顺序搜索my.cnf:/etc,mysql安装目录,安装目录下的data。/etc下的是全局设置。

2. 启动mysql:

/usr/local/mysql/bin/mysqld_safe --user=mysql &
 查看mysql版本:mysqladmin -u root -p version
 注:网上安装或者二进制安装的可以直接使用如下命令启动和停止mysql: /etc/init.d/mysql start|stop|restart

3. 停止mysql:

mysqladmin -uroot -ppassw0rd shutdown 注意,u,p后没有空格

4. 设置mysql自启动:

把启动命令加入/etc/rc.local文件中

5. 允许root远程登陆:
 1)本机登陆mysql:mysql -u root -p (-p一定要有);改变数据库:use mysql;
 2)从所有主机:grant all privileges on *.* to root@"%" identified by "passw0rd" with grant option;
 3)从指定主机:grant all privileges on *.* to root@"192.168.16.105" identified by "passw0rd" with grant option; flush privileges;
 4) 进mysql库查看host为%的数据是否添加:use mysql; select* from user;

6. 创建数据库,创建user:
 1) 建库:create database test1;
 2) 建用户,赋权:grant all privileges on test1.* to user_test@"%" identified by "passw0rd" with grant option;
 3)删除数据库:drop database test1;

7. 删除权限:
 1) revoke all privileges on test1.* fromtest1@"%";
 2) use mysql;
 3) delete from user where user="root" and host="%";
 4) flush privileges;
8. 显示所有的数据库:

show databases; 显示库中所有的表:show tables;

9. 远程登录mysql:

mysql -h ip -u user -p

10. 设置字符集(以utf8为例):
  1) 查看当前的编码:show variables like 'character%';
  2) 修改my.cnf,在[client]下添加default-character-set=utf8
  3) 在[server]下添加default-character-set=utf8,init_connect='SET NAMES utf8;'
  4) 重启mysql。
  注:只有修改/etc下的my.cnf才能使client的设置起效,安装目录下的设置只能使server的设置有效。
    进制安装的修改/etc/mysql/my.cnf即可

11. 旧数据升级到utf8(旧数据以latin1为例):
  1) 导出旧数据:mysqldump --default-character-set=latin1 -hlocalhost -uroot -B dbname --tables old_table >old.sql
  2) 转换编码(Linux和UNIX):iconv -t utf-8 -f gb2312 -c old.sql > new.sql
    这里假定原表的数据为gb2312,也可以去掉-f,让iconv自动判断原来的字符集。
 3) 导入:修改new.sql,在插入或修改语句前加一句话:"SET NAMES utf8;",并修改所有的gb2312为utf8,保存。
     mysql -hlocalhost -uroot -p dbname < new.sql
     如果报max_allowed_packet的错误,是因为文件太大,mysql默认的这个参数是1M,修改my.cnf中的值即可(需要重启mysql)。

12. 支持utf8的客户端:

Mysql-Front,Navicat,PhpMyAdmin,Linux Shell(连接后执行SET NAMES utf8;后就可以读写utf8的数据了。10.4设置完毕后就不用再执行这句话了)

13. 备份和恢复
   备份单个数据库:mysqldump -u root -p -B dbname > dbname.sql
   备份全部数据库:mysqldump -u root -p --all-databases > all.sql
   备份表: mysqldump -u root -p -B dbname --table tablename > tablename.sql
   恢复数据库:mysql -u root -p < name.sql
   恢复表:mysql -u root -p dbname < name.sql (必须指定数据库)

14. 复制
  Mysql支持单向的异步复制,即一个服务器做主服务器,其他的一个或多个服务器做从服务器。复制是通过二进制日志实现的,主服务器写入,从服务器读取。可以实现多个主服务器,但是会碰到单个服务器不曾遇到的问题(不推荐)。
  1). 在主服务器上建立一个专门用来做复制的用户:grant replication slave on *.* to'replicationuser'@'192.168.0.87'identified by 'iverson';
  2). 刷新主服务器上所有的表和块写入语句:flush tables with read lock; 然后读取主服务器上的二进制二进制文件名和分支:SHOW MASTER STATUS;将File和Position的值记录下来。记录后关闭主服务器:mysqladmin -uroot -ppassw0rd shutdown
   如果输出为空,说明服务器没有启用二进制日志,在my.cnf文件中[mysqld]下添加log-bin=mysql-bin,重启后即有。
  3). 为主服务器建立快照(snapshot)
   需要为主服务器上的需要复制的数据库建立快照,Windows可以使用zip格式,Linux和Unix最好使用tar命令。然后上传到从服务器mysql的数据目录,并解压。
   cd mysql-data-dir
   tar cvzf mysql-snapshot.tar ./mydb
   注意:快照中不应该包含任何日志文件或*.info文件,只应该包含要复制的数据库的数据文件(*.frm和*.opt)文件。
   可以用数据库备份(mysqldump)为从服务器做一次数据恢复,保证数据的一致性。
    4). 确认主服务器上my.cnf文件的[mysqld]section包含log-bin选项和server-id,并启动主服务器:
   [mysqld]
   log-bin=mysql-bin
   server-id=1
  5). 停止从服务器,加入server-id,然后启动从服务器:
   [mysqld]
   server-id=2
   注:这里的server-id是从服务器的id,必须与主服务器和其他从服务器不一样。
   可以在从服务器的配置文件中加入read-only选项,这样从服务器就只接受来自主服务器的SQL,确保数据不会被其他途经修改。
  6). 在从服务器上执行如下语句,用系统真实值代替选项:
   change master to MASTER_HOST='master_host', MASTER_USER='replication_user',MASTER_PASSWORD='replication_pwd',
   MASTER_LOG_FILE='recorded_log_file_name',MASTER_LOG_POS=log_position;
  7). 启动从线程:mysql> START SLAVE; 停止从线程:stop slave;(注意:主服务器的防火墙应该允许3306端口连

【转】MySQL的安装与配置的更多相关文章

  1. 第一章 数据库概述、MySQL的安装和配置

      第一章 数据库概述.MySQL的安装和配置   1.为什么要使用数据库 最早是纸质文件来存储数据 缺点:不易保存,占用空间大 计算机出现以后,采用软件来进行保存(excel) 缺点:容易损坏 文件 ...

  2. MySql的安装及配置详细指引!

    一.安装My Sql数据库 1.1,首先下载MySQL与HeidiSQL工具,双击打开后可以看到名为”mysql-5.0.22-win32 Setup.exe”的安装程序,双击执行该程序. 1.2,打 ...

  3. mysql免安装版配置与使用方法

    mysql免安装版配置与使用方法      以mysql-noinstall-5.1.6(win32)为例 1>把压缩文件mysql-noinstall-5.1.6-alpha-win32.zi ...

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

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

  5. Mysql数据库安装和配置

    http://blog.csdn.net/pipisorry/article/details/46773507 Mysql数据库安装和配置.mysql语法.特殊符号及正则表达式的使用.MySQL备份与 ...

  6. Mysql免安装版配置教程和常用命令图

    Mysql免安装版配置教程 图文版 配置环境变量 新建一个my.ini文件,添加下面内容 [mysqld] basedir=C:\\software\Mysql\mysql-5.7.14-winx64 ...

  7. 数据库之mysql篇(1)—— 数据库管理系统简介/mysql的安装、配置

    说mysql之前,还是先说说数据库. 什么是数据库: 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后 ...

  8. C#自制Web 服务器开发:mysql免安装版配置步骤详解分享

    mysql免安装版配置步骤详解分享 1.准备工作 下载mysql的最新免安装版本mysql-noinstall-5.1.53-win32.zip,解压缩到相关目录,如:d:\ mysql-noinst ...

  9. 1.Mysql的安装与配置

    1.Mysql的安装与配置1.1 Mysql的下载 mysql是开源数据库,开源数据库在中低端应用中占据了很大的市场份额. mysql社区版自由下载而且安全免费,官方不提供任何技术支持,适用于普通用户 ...

  10. Ubuntu 12.04下mysql的安装与配置

    转自:http://blog.csdn.net/ichsonx/article/details/9285935 准备  0. 获取 mysql-5.5.15-linux2.6-i686.tar.gz ...

随机推荐

  1. Bootstrap栅格系统(布局)

    栅格系统(布局) Bootstrap内置了一套响应式.移动设备优先的流式栅格系统,随着屏幕设备或视口(viewport)尺寸的增加,系统会自动分为最多12列. 我在这里是把Bootstrap中的栅格系 ...

  2. Linux下Vim工具常用命令

    原文地址: http://www.cnblogs.com/lizhenghn/p/3675011.html 在linux下做开发,甚至是只做管理维护工作,也少不了Vim的使用.作为一个新手,我也是刚刚 ...

  3. hibernate+mysql 8小时问题

    在生产环境中使用了 自带的连接池 结果 遇到 mysql8小时问题 然后 采用了 c3p0 连接池 hibernate 版本 4.3.6 c3p0版本 0.9.5-pre10 ps:hibernate ...

  4. 使用TopShelf轻松开发Window服务

    关于TopShelf 描述: Topshelf is a framework for hosting services written using the .NET framework. The cr ...

  5. VS DLL 复制本地

    1.引用一个DLL,需要指定路径,复制本地的意思是 把这个DLL复制到exe的Debug目录(调试的时候). 2.复制到本地的动作是在生成的时候执行的,清理的时候会删除. 3.从外部引用一个DLL,不 ...

  6. HDU 4348 To the moon 可持久化线段树,有时间戳的区间更新,区间求和

    To the moonTime Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hust.edu.cn/vjudge/contest/view.a ...

  7. osg 笔记一 (转)

    场景图形采用一种自顶向下的,分层的树状数据结构来组织空间数据集,以提高渲染的效率 场景图形树结构的顶部是一个根节点,从根节点向下延伸,各个组节点中均包含了几何信息和用于控制其外观的渲染状态信息.根节点 ...

  8. delphi 在 DragDrop 的时候,滚动 TreeView

    在 DragDrop 的时候,滚动 TreeView 当高度不够的时候   procedure TForm1.TreeView1DragOver(Sender, Source: TObject; X, ...

  9. iOS开发——网络编程Swift篇&(六)异步Post方式

    异步Post方式 // MARK: - 异步Post方式 func asynchronousPost() { //创建NSURL对象 var url:NSURL! = NSURL(string: &q ...

  10. 数据恢复软件使用经验-支持U盘,手机SD卡,硬盘数据,解决图片恢复后打不开的问题

    数据恢复软件使用经验-支持U盘,手机SD卡,硬盘数据.解决图片恢复后打不开的问题. 用过非常多数据恢复软件.最早EasyRecovery pro.恢复过U盘.手机SD卡,硬盘数据.但如今下载不了最新版 ...