mysql数据库安装实战(二进制安装)

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介:

1    安装环境准备:

环境:CentOS 6.8 64位

安装二进制分发版 mysql-5.5.49-linux2.6-x86_64.tar.gz

myseql 二进制包下载地址:

https://downloads.mysql.com/archives/community/

http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.49-linux2.6-x86_64.tar.gz

wKiom1mddefw2gTKAAO2cAlZY60319.jpg

wKiom1mddfKCBOiDAAQzHGUTBBY147.jpg

    上传mysql-5.5.49-linux2.6-x86_64.tar.gz 二进制包到/home/oldboy/tools目录下面

1
2
3
4
5
6
7
[root@web01 ~] # cd /home/oldboy/tools
[root@web01 tools] # rz -y       #上传mysql-5.5.49-linux2.6-x86_64.tar.gz到当前目录下
[root@web01 tools] # ls -hil
total 179M
261195 -rw-r--r-- 1 root root 178M Aug 23 19:57 mysql-5.5.49-linux2.6-x86_64. tar .gz
261198 drwxr-xr-x 9 1001 1001 4.0K Aug 19 16:11 nginx-1.6.3
261196 -rw-r--r-- 1 root root 787K Apr  8  2015 nginx-1.6.3. tar .gz

    创建用户:命令useradd mysql -s /sbin/nologin -M和useradd -s /sbin/nologin mysql -M是一样的。

1
2
3
[root@web01 tools] # useradd -s /sbin/nologin mysql -M
[root@web01 tools] # id mysql
uid=504(mysql) gid=504(mysql)  groups =504(mysql)

    解压mysql二进制包:

1
2
3
4
[root@web01 tools] #  tar xf mysql-5.5.49-linux2.6-x86_64.tar.gz
[root@web01 tools] # ls
mysql-5.5.49-linux2.6-x86_64         nginx-1.6.3
mysql-5.5.49-linux2.6-x86_64. tar .gz  nginx-1.6.3. tar .gz

    移动mysql

1
[root@web01 tools] # mv mysql-5.5.49-linux2.6-x86_64 /application/mysql-5.5.49

    创建软链接

1
[root@web01 tools] # ln -s /application/mysql-5.5.49/ /application/mysql

    授权

1
2
3
4
5
[root@web01 tools] # cd /application/mysql
[root@web01 mysql] # chown -R mysql.mysql /application/mysql/
[root@web01 mysql] # ls
COPYING         README  data  include   man          scripts  sql-bench
INSTALL-BINARY  bin     docs  lib      mysql- test   share    support-files

    安装mysql并指定mysql根路径和数据文件路径

1
[root@web01 mysql] # ./scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql

此步骤操作看到如下两个OK就代表安装完成了。

[root@web01 mysql]# ./scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/
Installing MySQL system tables...
170823 21:00:53 [Note] /application/mysql//bin/mysqld (mysqld 5.5.49) starting as process 1756 ...
OK
Filling help tables...
170823 21:00:53 [Note] /application/mysql//bin/mysqld (mysqld 5.5.49) starting as process 1763 ...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/application/mysql//bin/mysqladmin -u root password 'new-password'
/application/mysql//bin/mysqladmin -u root -h web01 password 'new-password'

Alternatively you can run:
/application/mysql//bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd /application/mysql/ ; /application/mysql//bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl
cd /application/mysql//mysql-test ; perl mysql-test-run.pl

Please report any problems at http://bugs.mysql.com/

    上面的安装就生成内部两个管理库:mysql和performance_schema

1
2
3
4
5
[root@web01 mysql] # ll data/
total 12
drwx------ 2 mysql root  4096 Aug 23 21:00 mysql
drwx------ 2 mysql mysql 4096 Aug 23 21:00 performance_schema
drwxr-xr-x 2 mysql mysql 4096 Aug 23 20:46  test

    做个调整

1
2
[root@web01 mysql] # cd bin/
[root@web01 bin] # less mysqld_safe

    启动文件mysqld_safe默认的路径是/usr/local需要替换成/application/,测试下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
[root@web01 bin] # sed 's#/usr/local/#/application/#g' mysqld_safe |grep application
if  echo  '/application/mysql/share'  grep  '^/application/mysql'  /dev/null
   relpkgdata=` echo  '/application/mysql/share'  sed  -e  's,^/application/mysql,,'  -e  's,^/,,'  -e  's,^,./,' `
   relpkgdata= '/application/mysql/share'
   MY_BASEDIR_VERSION= '/application/mysql'
   ledir= '/application/mysql/bin'
   DATADIR= /application/mysql/data
elif  test  -x  /application/mysql/bin/my_print_defaults
   print_defaults= "/application/mysql/bin/my_print_defaults"
elif  test  -x  /application/mysql/bin/mysql_print_defaults
   print_defaults= "/application/mysql/bin/mysql_print_defaults"
     plugin_dir= '/application/mysql/lib/plugin'
[root@web01 bin] # sed 's#/usr/local/#/application/#g' mysqld_safe |grep application
if  echo  '/application/mysql/share'  grep  '^/application/mysql'  /dev/null
   relpkgdata=` echo  '/application/mysql/share'  sed  -e  's,^/application/mysql,,'  -e  's,^/,,'  -e  's,^,./,' `
   relpkgdata= '/application/mysql/share'
   MY_BASEDIR_VERSION= '/application/mysql'
   ledir= '/application/mysql/bin'
   DATADIR= /application/mysql/data
elif  test  -x  /application/mysql/bin/my_print_defaults
   print_defaults= "/application/mysql/bin/my_print_defaults"
elif  test  -x  /application/mysql/bin/mysql_print_defaults
   print_defaults= "/application/mysql/bin/mysql_print_defaults"
     plugin_dir= '/application/mysql/lib/plugin'

    测试完成后直接替换

1
[root@web01 bin] # sed -i 's#/usr/local/#/application/#g' mysqld_safe

    替换配置文件

1
2
[root@web01 mysql] # cp support-files/my-small.cnf /etc/my.cnf 
cp : overwrite ` /etc/my .cnf'? y

    启动mysql,启动命令为/application/mysql/bin/mysqld_safe --user=mysql &

1
2
3
4
5
[root@web01 mysql] # /application/mysql/bin/mysqld_safe --user=mysql &
[1] 2185
[root@web01 mysql] # 170823 21:37:36 mysqld_safe Logging to '/application/mysql/data/web01.err'.
170823 21:37:36 mysqld_safe Starting mysqld daemon with databases from  /application/mysql/data
^C

    查看进程是否生成

1
2
3
[root@web01 mysql] # lsof -i :3306
COMMAND  PID  USER   FD   TYPE DEVICE SIZE /OFF  NODE NAME
mysqld  2415 mysql   10u  IPv4  20041      0t0  TCP *:mysql (LISTEN)

    优化

1
2
3
[root@web01 mysql] # PATH="/application/mysql/bin:$PATH"
[root@web01 mysql] # which mysql
/application/mysql/bin/mysql

    配置mysql命令的全局使用路径:用vim /etc/profile 把export PATH="/application/mysql/bin:$PATH"追加到/etc/profile最后一行

1
2
[root@web01 mysql] # tail -1 /etc/profile
export  PATH= "/application/mysql/bin:$PATH"

    使配置生效

1
[root@web01 mysql] # . /etc/profile

    已生效

1
2
[root@web01 mysql] # echo $PATH
/application/mysql/bin : /application/mysql/bin : /usr/local/sbin : /usr/local/bin : /sbin : /bin : /usr/sbin : /usr/bin : /root/bin

    此时输入mysql就直接进来了

1
2
3
4
5
6
7
8
9
10
[root@web01 mysql] # mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection  id  is 1
Server version: 5.5.49 MySQL Community Server (GPL)
Copyright (c) 2000, 2016, Oracle and /or  its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and /or  its
affiliates. Other names may be trademarks of their respective
owners.
Type  'help;'  or  '\h'  for  help. Type  '\c'  to  clear  the current input statement.
mysql>

    这就表示成功了,quit退出mysql,再做一个调整

1
mysql> quit

    调整如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[root@web01 mysql] # ll support-files/
total 96
-rwxr-xr-x 1 mysql mysql  1153 Mar  1  2016 binary-configure
-rw-r--r-- 1 mysql mysql  4528 Mar  1  2016 config.huge.ini
-rw-r--r-- 1 mysql mysql  2382 Mar  1  2016 config.medium.ini
-rw-r--r-- 1 mysql mysql  1626 Mar  1  2016 config.small.ini
-rw-r--r-- 1 mysql mysql   773 Mar  1  2016 magic
-rw-r--r-- 1 mysql mysql  4691 Mar  1  2016 my-huge.cnf
-rw-r--r-- 1 mysql mysql 19759 Mar  1  2016 my-innodb-heavy-4G.cnf
-rw-r--r-- 1 mysql mysql  4665 Mar  1  2016 my-large.cnf
-rw-r--r-- 1 mysql mysql  4676 Mar  1  2016 my-medium.cnf
-rw-r--r-- 1 mysql mysql  2840 Mar  1  2016 my-small.cnf
-rwxr-xr-x 1 mysql mysql   839 Mar  1  2016 mysql-log-rotate
-rwxr-xr-x 1 mysql mysql 10880 Mar  1  2016 mysql.server
-rwxr-xr-x 1 mysql mysql  1061 Mar  1  2016 mysqld_multi.server
-rw-r--r-- 1 mysql mysql  1326 Mar  1  2016 ndb-config-2-node.ini
1
2
3
[root@web01 mysql] # sed -i 's#/usr/local/#/application/#g' support-files/mysql.server 
[root@web01 mysql] # cp support-files/mysql.server /etc/init.d/mysqld
[root@web01 mysql] # chmod +x /etc/init.d/mysqld

    stop mysql服务

1
2
3
4
[root@web01 mysql] # /etc/init.d/mysqld stop
Shutting down MySQL.170823 21:57:02 mysqld_safe mysqld from pid  file  /application/mysql/data/web01 .pid ended
  SUCCESS! 
[1]+  Done                     /application/mysql/bin/mysqld_safe  --user=mysql
1
[root@web01 mysql] # lsof -i :3306

    start mysql服务,出来结果

1
2
3
4
5
[root@web01 mysql] # /etc/init.d/mysqld start
Starting MySQL.. SUCCESS! 
[root@web01 mysql] # lsof -i :3306
COMMAND  PID  USER   FD   TYPE DEVICE SIZE /OFF  NODE NAME
mysqld  2742 mysql   10u  IPv4  20558      0t0  TCP *:mysql (LISTEN)

    设置开机自启动

1
2
3
[root@web01 mysql] # chkconfig --add mysqld
[root@web01 mysql] # chkconfig --list mysqld
mysqld          0:off   1:off   2:on    3:on    4:on    5:on    6:off

    判断mysql是否安装成功,直接输入mysql能进入mysql界面就说明成功了,如下所示成功安装myslq。

1
2
3
4
5
6
7
8
9
10
[root@web01 mysql] # mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection  id  is 1
Server version: 5.5.49 MySQL Community Server (GPL)
Copyright (c) 2000, 2016, Oracle and /or  its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and /or  its
affiliates. Other names may be trademarks of their respective
owners.
Type  'help;'  or  '\h'  for  help. Type  '\c'  to  clear  the current input statement.
mysql>


总结:

wKioL1mdnB3QgxUoAAF202jwHQY740.jpg

wKiom1mdnCjjRbEEAAAp4NFdq78751.jpg

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

sandshell
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2天前
|
关系型数据库 MySQL Linux
Linux CentOs7 安装Mysql(5.7和8.0版本)密码修改 超详细教程
Linux CentOs7 安装Mysql(5.7和8.0版本)密码修改 超详细教程
|
2天前
|
安全 关系型数据库 MySQL
MySQL安装教程
MySQL安装教程
22 0
|
2天前
|
存储 NoSQL 关系型数据库
MongoDB非关系型数据库实战
【5月更文挑战第6天】MongoDB,流行的NoSQL数据库,以其灵活的数据模型和高性能备受青睐。本文介绍了MongoDB的基础,包括文档型数据库特性、安装配置、数据操作。通过电商订单管理的实战案例,展示了MongoDB在处理复杂数据结构和大规模数据时的优势,适用于电商、游戏、视频直播等场景。MongoDB的索引、全文搜索和地理空间功能进一步增强了其实用性。注意性能优化和扩展性以确保系统稳定性和可靠性。
|
2天前
|
SQL 关系型数据库 MySQL
【简单无脑】自动化脚本一键安装虚拟机下的MySQL服务
该文章提供了在虚拟机上安装MySQL服务的简化方法,特别是针对新手。作者提供了一个自动化脚本`install_mysql.sh`,使得安装过程更简单。用户需要下载`install.rpm`资源,将其放在指定目录下,然后创建并编辑脚本文件,将提供的代码粘贴进去,通过`chmod u+x`授权,最后运行脚本`./install_mysql.sh [rpm文件路径]`来安装MySQL。文章还附有相关图片说明。
13 1
【简单无脑】自动化脚本一键安装虚拟机下的MySQL服务
|
2天前
|
SQL 缓存 关系型数据库
MySQL常见问题解决和自动化安装脚本
这篇内容包含了两个主要部分:解决MySQL登录问题和处理GPG密钥问题。当MySQL密码正确但无法登录时,可以通过执行SQL命令`ALTER USER`和`flush privileges`来修改和重置密码。对于MySQL安装时的GPG密钥错误,首先需要强制删除旧的MySQL仓库包,导入新的GPG公钥,然后安装MySQL服务器。如果遇到GPG检查错误,可以使用`--nogpgcheck`参数忽略检查来安装。最后,提供了一个自动化安装MySQL的脚本,用于检查旧版本、卸载残留、安装MySQL8并启动服务。
15 1
MySQL常见问题解决和自动化安装脚本
|
4天前
|
SQL 数据库 Windows
sql数据库安装过程,SQL数据库的安装过
本文概述了安装SQL Server数据库的步骤:准备硬件和软件环境,运行安装程序,选择安装类型,接受许可协议,设定安装路径和组件,配置实例和服务账户,选择身份验证模式,配置其他设置,然后安装并完成。安装后需检查验证SQL Server是否正常工作。确保遵循步骤以顺利完成安装。
42 3
|
6天前
|
SQL 关系型数据库 MySQL
【MySQL-3】图形化界面工具DataGrip安装&配置&使用
【MySQL-3】图形化界面工具DataGrip安装&配置&使用
|
6天前
|
关系型数据库 MySQL Linux
【MySQL-2】MySQL的下载&安装&启停&配置环境变量【一条龙教程】
【MySQL-2】MySQL的下载&安装&启停&配置环境变量【一条龙教程】
|
8天前
|
缓存 关系型数据库 MySQL
MySQL数据库性能优化实战
【4月更文挑战第30天】本文探讨了MySQL性能优化实战技巧,包括硬件与配置优化(如使用SSD、增加内存和调整配置参数)、索引优化(创建合适索引、使用复合索引及定期维护)、查询优化(避免全表扫描、减少JOIN和使用LIMIT)、分区与分片(表分区和数据库分片),以及使用缓存、定期清理数据库和监控诊断。通过这些方法,可以提升数据库性能和响应速度。