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

简介:

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
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
11月前
|
SQL 关系型数据库 数据库
Python SQLAlchemy模块:从入门到实战的数据库操作指南
免费提供Python+PyCharm编程环境,结合SQLAlchemy ORM框架详解数据库开发。涵盖连接配置、模型定义、CRUD操作、事务控制及Alembic迁移工具,以电商订单系统为例,深入讲解高并发场景下的性能优化与最佳实践,助你高效构建数据驱动应用。
1135 7
|
11月前
|
Ubuntu 关系型数据库 MySQL
MySQL源码编译安装
本文详细介绍了MySQL 8.0及8.4版本的源码编译安装全过程,涵盖用户创建、依赖安装、cmake配置、编译优化等步骤,并提供支持多Linux发行版的一键安装脚本,适用于定制化数据库部署需求。
2485 4
MySQL源码编译安装
|
11月前
|
Ubuntu 关系型数据库 MySQL
MySQL二进制包安装
本文详细介绍了在多种Linux系统上通过二进制包安装MySQL 8.0和8.4版本的完整过程,涵盖用户创建、glibc版本匹配、程序解压、环境变量配置、初始化数据库及服务启动等步骤,并提供支持多发行版的一键安装脚本,助力高效部署MySQL环境。
1865 4
MySQL二进制包安装
|
11月前
|
安全 关系型数据库 MySQL
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
本文详细介绍在openSUSE系统上通过离线RPM包安装MySQL 8.0和8.4版本的完整步骤,包括下载地址、RPM包解压、GPG密钥导入、使用rpm或zypper命令安装及服务启动验证,涵盖初始密码获取与安全修改方法,适用于无网络环境下的MySQL部署。
988 3
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
|
11月前
|
关系型数据库 MySQL Linux
MySQL包安装 -- SUSE系列(SUSE资源库安装MySQL)
本文介绍了在openSUSE系统上通过SUSE资源库安装MySQL 8.0和8.4版本的完整步骤,包括配置国内镜像源、安装MySQL服务、启动并验证运行状态,以及修改初始密码等操作,适用于希望在SUSE系列系统中快速部署MySQL的用户。
986 3
MySQL包安装 -- SUSE系列(SUSE资源库安装MySQL)
|
11月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
1010 6
|
11月前
|
运维 Ubuntu 关系型数据库
MySQL包安装 -- Debian系列(Apt资源库安装MySQL)
本文介绍了在Debian系列系统(如Ubuntu、Debian 11/12)中通过APT仓库安装MySQL 8.0和8.4版本的完整步骤,涵盖添加官方源、配置国内镜像、安装服务及初始化设置,并验证运行状态,适用于各类Linux运维场景。
2903 0
MySQL包安装 -- Debian系列(Apt资源库安装MySQL)
|
11月前
|
Oracle 关系型数据库 MySQL
MySQL包安装 -- RHEL系列(离线RPM包安装MySQL)
本文详细介绍在Rocky、CentOS、AlmaLinux、openEuler等主流Linux系统上,通过离线RPM包安装MySQL 8.0和8.4版本的完整步骤,涵盖下载、依赖处理、rpm/yum安装、服务启动、密码设置等关键环节,适用于多种企业级环境部署需求。
3363 0
MySQL包安装 -- RHEL系列(离线RPM包安装MySQL)
|
11月前
|
存储 关系型数据库 MySQL
MySQL介绍和MySQL包安装 -- RHEL系列(Yum资源库安装MySQL)
MySQL是一款开源关系型数据库,高性能、易用、跨平台,支持多种存储引擎,广泛应用于Web开发、企业级应用等领域。本教程介绍其特点、架构及在主流Linux系统中的安装配置方法。
1554 0
MySQL介绍和MySQL包安装 -- RHEL系列(Yum资源库安装MySQL)

推荐镜像

更多