Linux服务器部署系列之二—MySQL篇

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:


MySQLlinux环境中使用最广泛的数据库之一,著名的“LAMP黄金组合”就要用到MySQL。关于MySQL的优点及作用,我就不多讲了,网上很多这样的文章。 今天我们要谈的是MySQL服务器的部署。

 
一、   安装 MySQL
1. 软件需求:
mysql-5.0.83-linux-i686.tar.gz
 
2.  查看系统中是否已经安装了 MySQL ,如果有卸载所有以 mysql 开头的包。
# rpm  qa | grep  mysql         // 查看系统中是否已经安装了 MySQL
# rpm   mysql-*             // 卸载所有以 mysql 开头的包
# rm   /etc/my.cnf            // 查找 /etc/my.cnf ,如果有删除它
 
3.  安装 MySQL
# useradd  mysql                 // 添加用于启动 MySQL 的用户
# groupadd  mysql                // 添加用于启动 MySQL 的用户组
# tar  zxvf  mysql-5.0.83-linux-i686.tar.gz
# cp  rf  mysql-5.0.83-linux-i686  /usr/local/
# cd  /usr/local
# mv  mysql-5.0.83-linux-i686  mysql
# cd  /usr/local/mysql
# scripts/mysql_install_db           // 初始化授权表
# cd  /usr/local
# chgrp   mysql  mysql
# chown   mysql  mysql/data          // 修改 MySQL 目录的所有权
# ln   /usr/local/mysql/bin/*  /usr/local/bin/
# bin/safe_mysqld  --user=mysql  &              // 启动 Mysql  & 表示后台运行
 
4.  测试
# mysqladmin  status                         // 服务状态查询
# mysql                                   // 登录 Mysql
5.  配置系统启动时自动启动 MySQL
 
6.  修改 MySQL 的最大连接数
# vi /etc/my.cnf
// 添加以下行
说明:
max_connections 设置最大连接数为 1000 max_user_connections 设置每用户最大连接数为 200 wait_timeout 表示 200 秒后将关闭空闲( IDLE )的连接,但是对正在工作的连接不影响。
// 保存退出,并重新启动 MySQL ,然后使用下面的命令查看修改是否成功
 
二、口令修改
1. Mysql 安装好后, root 用户默认是没有密码的,所以我们需要给它添加一个密码。格式如下:
# mysqladmin  -u  root  password   密码
比如,要将 root 的密码设为 123456
# mysqladmin  -u  root  password  123456
2.  添加密码后再连接服务器,就需要用以下格式的命令了:
# mysql  -h   主机名或 IP 地址   -u   用户名   -p
比如,登录本机数据库:
# mysql  -h  localhost  -root  -p
3.  如果用户已经有密码了,需要修改密码,那么需要按以下格式更改密码:
# mysqladmin  -u  root  -p  password   密码
比如,将 root 用户的密码改为 abc123
# mysqladmin  -u  root  -p  password  abc123
 
三、备份
1.  在线备份
在线备份有两种方式,使用 mysqldump 命令或 mysqlhotcopy 命令。
1 mysqldump 命令
  A.  导出指定数据库的表,如果不指定 tables ,将导出整个数据库的所有表:
    # mysqldump  [options]  database  [tables]
  B.  可同时导出多个数据库
# mysqldump  [options]  --database  [options]  db1 [db2 db3 …..]
  C.  导出当前服务器内的所有数据库
# mysqldump  [options]  -all-database  [options]
  D.  如果忘记 mysqldump 的参数,可以使用如下命令查找:
# mysqldump  -help
2) mysqlhotcopy 命令
  Mysqlhotcopy 命令是将某个数据库复制为一个新的数据库副本,而不中止原数据库服务,格式如下:
# mysqlhotcopy  db_name
 
2.  离线备份
   离线备份可以使用 gzip 方式将数据库压缩成 .tgz 文件,比如,将 /usr/local/mysql 下的数据库采用 gzip 方式压缩到 /backup/mysql.tgz 文件中:
  # tar  cvfz  /backup/mysql.tgz  /usr/local/mysql
 
四、故障恢复
   数据库运行久了,偶尔会产生一些故障,这时候我们可以通过 myisamchk 命令进行恢复,格式如下:
  #myisamchk  [options]  tables [.MYI]          //tables[.MYI] 是指数据表所在的文件名
如果只是简单出错,可以使用快速恢复:
  #myisamchk  -r  -q  table_name
如果快速恢复不了了,可以使用直接恢复:
  #myisamchk  -r  table_name
如果直接恢复也不行了,可以使用安全恢复:
  #myisamchk  -safe-recover  table_name
 
五、使用 phpMyAdmin 实现 web 管理
1.  安装
1 )软件需求
phpMyAdmin-3.2.0-all-languages
下载地址: http://www.phpmyadmin.net
2 )安装
默认下载的是 .zip 文件,无需编译安装,我们使用 unzip 解压后,存放到 /usr/local/apache/htdocs 目录下,并做好相关配置就可以使用了。 phpMyAdmin 需要 Apache 的支持,关于 Apache 的配置可以参照上一篇文: Linux 服务器部署系列之一 —Apache 篇( http://guoxuemin.blog.51cto.com/379574/168534 )。
 
2.  配置
phpMyAdmin 的配置文件主要是 phpMyAdmin 目录下的 config.inc.php ,默认情况下该文件为 config.sample.inc.php ,需要将其先修改为 config.inc.php
可以根据需要,修改以下行:
说明:
$cfg['Servers'][$i]['host'] = 'localhost';     // 数据库服务器
$cfg['Servers'][$i]['auth_type'] = 'config';  // 登录方式,在自己的机子里调试用 config ,如果在网上用 http cookie
$cfg['Servers'][$i]['user'] = 'root';    // 数据库用户名
$cfg['Servers'][$i]['password'] = '';   // 数据库密码
$cfg['Servers'][$i]['only_db'] = '';    // 数据库名称
$cfg['DefaultLang'] = 'zh';         // 中文显示默认
 
3.  测试
打开浏览器,输入地址: http://192.168.99.9/phpMyAdmin ,就可以看到 MySQL Web 登录界面了。
输入数据的用户名和密码后,就可以打开 Web 管理界面了,如下图:
通过 Web 管理 MySQL 数据库要直观许多,不过,这个要看个人习惯、爱好。
MySQL 的部署完成,结合上一篇文“ Linux 服务器部署系列之一— Apache 篇”( http://guoxuemin.blog.51cto.com/379574/168534 ),就可以配置出著名的“ LAMP 黄金组合”。




     本文转自Tonyguo 51CTO博客,原文链接:http://blog.51cto.com/tonyguo/168810,如需转载请自行联系原作者




相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
22小时前
|
Linux 网络安全
linux/服务器使用scp将一个服务器文件转移到另一个服务器上
linux/服务器使用scp将一个服务器文件转移到另一个服务器上
26 3
|
1天前
|
监控 JavaScript 网络协议
Linux系统之安装uptime-kuma服务器监控面板
【5月更文挑战第12天】Linux系统之安装uptime-kuma服务器监控面板
10 0
|
2天前
|
消息中间件 安全 Linux
服务器(Linux)在线下载activeMQ以及配置打开
服务器(Linux)在线下载activeMQ以及配置打开
11 3
|
2天前
|
Java Linux
Linux(服务器) 装JDK
Linux(服务器) 装JDK
16 1
|
2天前
|
监控 安全 Cloud Native
【云原生之Docker实战】使用Docker部署Ward服务器监控工具
【5月更文挑战第11天】使用Docker部署Ward服务器监控工具
17 3
|
2天前
|
关系型数据库 MySQL Linux
Linux下安装MySQL
Linux下安装MySQL
13 0
|
2天前
|
SQL 关系型数据库 MySQL
Linux对MySQL语法校验
【5月更文挑战第4天】
|
2天前
|
关系型数据库 MySQL Linux
服务器Linux系统配置mysql数据库主从自动备份
这是一个基本的配置主从复制和设置自动备份的指南。具体的配置细节和命令可能因您的环境和需求而有所不同,因此建议在操作前详细阅读MySQL文档和相关资源,并谨慎操作以避免数据丢失或不一致。
14 3
|
2天前
|
关系型数据库 MySQL 数据库
mysqlTools 一分钟部署安装本mysql多个版本,解锁繁琐部署过程
mysqlTools 一分钟部署安装本mysql多个版本,解锁繁琐部署过程
180 2
|
2天前
|
Oracle Java 关系型数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
14 6