一、简介

MySQL 是最流行的关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。
MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。
MySQL由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。

二、准备

1、所需软件

mysql-5.6.34.tar.gz

下载地址:http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.34.tar.gz

2、所需环境

1)卸载自带 mysql

# yum -y remove mysql*

2)将原配置文件删除或改名

# mv /etc/my.cnf /etc/my.cnf.old

三、安装

1、配置yum源

1)将系统 rhel-server-7.3-x86_64-dvd.iso 文件拷贝到 /soft 目录下

# cp rhel-server-7.3-x86_64-dvd.iso /soft/

2)建立挂载所需的目录

# mkdir -p /media/cdrom

3)挂载
# mount -o loop /soft/rhel-server-7.3-x86_64-dvd.iso /media/cdrom

4)进入 /etc/yum.repo.d 目录,对yum 源进行设置
# cd /etc/yum.repo.d
# vi server.repo

5)查看是否安装成功,显示有4751 个软件包,源配置成功
# yum repolist

2、安装依赖

# yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make cmake

3、创建用户和组

# groupadd -r mysql

# useradd -g mysql -r -d /mydata/data mysql

4、解压安装包

# tar zxvf mysql-5.6.34.tar.gz

5、编译

# cd mysql-5.6.34

# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mydata/data -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

其他参考

# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql/ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_INNODB_MEMCACHED=1 -DWITH_DEBUG=OFF -DWITH_ZLIB=bundled -DENABLED_LOCAL_INFILE=1 -DENABLED_PROFILING=ON -DMYSQL_MAINTAINER_MODE=OFF -DMYSQL_DATADIR=/usr/local/webserver/mysql/data -DMYSQL_TCP_PORT=3306

6、安装

# make

# make install

7、查看是否安装成功

查看mysql版本

# /usr/local/mysql/bin/mysql --version

四、配置

1、更改 /usr/local/mysql 目录所属

# cd /usr/local

# chown -R mysql:mysql mysql

2、安装perl

# yum -y install perl*

3、初始化数据库

# mkdir -p /mydata/data

# cd /usr/local/mysql

# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/mydata/data

Installing MySQL system tables...2016-12-12 13:24:13 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2016-12-12 13:24:13 0 [Note] Ignoring --secure-file-priv value as server is running with --bootstrap.
2016-12-12 13:24:13 0 [Note] /usr/local/mysql/bin/mysqld (mysqld 5.6.34) starting as process 4076 ...
2016-12-12 13:24:13 4076 [Note] InnoDB: Using atomics to ref count buffer pool pages
2016-12-12 13:24:13 4076 [Note] InnoDB: The InnoDB memory heap is disabled
2016-12-12 13:24:13 4076 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2016-12-12 13:24:13 4076 [Note] InnoDB: Memory barrier is not used
2016-12-12 13:24:13 4076 [Note] InnoDB: Compressed tables use zlib 1.2.7
2016-12-12 13:24:13 4076 [Note] InnoDB: Using CPU crc32 instructions
2016-12-12 13:24:13 4076 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2016-12-12 13:24:13 4076 [Note] InnoDB: Completed initialization of buffer pool
2016-12-12 13:24:13 4076 [Note] InnoDB: The first specified data file ./ibdata1 did not exist: a new database to be created!
2016-12-12 13:24:13 4076 [Note] InnoDB: Setting file ./ibdata1 size to 12 MB
2016-12-12 13:24:13 4076 [Note] InnoDB: Database physically writes the file full: wait...
2016-12-12 13:24:13 4076 [Note] InnoDB: Setting log file ./ib_logfile101 size to 48 MB
2016-12-12 13:24:14 4076 [Note] InnoDB: Setting log file ./ib_logfile1 size to 48 MB
2016-12-12 13:24:16 4076 [Note] InnoDB: Renaming log file ./ib_logfile101 to ./ib_logfile0
2016-12-12 13:24:16 4076 [Warning] InnoDB: New log files created, LSN=45781
2016-12-12 13:24:16 4076 [Note] InnoDB: Doublewrite buffer not found: creating new
2016-12-12 13:24:16 4076 [Note] InnoDB: Doublewrite buffer created
2016-12-12 13:24:16 4076 [Note] InnoDB: 128 rollback segment(s) are active.
2016-12-12 13:24:16 4076 [Warning] InnoDB: Creating foreign key constraint system tables.
2016-12-12 13:24:16 4076 [Note] InnoDB: Foreign key constraint system tables created
2016-12-12 13:24:16 4076 [Note] InnoDB: Creating tablespace and datafile system tables.
2016-12-12 13:24:16 4076 [Note] InnoDB: Tablespace and datafile system tables created.
2016-12-12 13:24:16 4076 [Note] InnoDB: Waiting for purge to start
2016-12-12 13:24:16 4076 [Note] InnoDB: 5.6.34 started; log sequence number 0
2016-12-12 13:24:16 4076 [Note] RSA private key file not found: /mydata/data//private_key.pem. Some authentication plugins will not work.
2016-12-12 13:24:16 4076 [Note] RSA public key file not found: /mydata/data//public_key.pem. Some authentication plugins will not work.
2016-12-12 13:24:19 4076 [Note] Binlog end
2016-12-12 13:24:19 4076 [Note] InnoDB: FTS optimize thread exiting.
2016-12-12 13:24:19 4076 [Note] InnoDB: Starting shutdown...
2016-12-12 13:24:19 4076 [Note] InnoDB: Shutdown completed; log sequence number 1625977
OK

Filling help tables...2016-12-12 13:24:20 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2016-12-12 13:24:20 0 [Note] Ignoring --secure-file-priv value as server is running with --bootstrap.
2016-12-12 13:24:20 0 [Note] /usr/local/mysql/bin/mysqld (mysqld 5.6.34) starting as process 4098 ...
2016-12-12 13:24:20 4098 [Note] InnoDB: Using atomics to ref count buffer pool pages
2016-12-12 13:24:20 4098 [Note] InnoDB: The InnoDB memory heap is disabled
2016-12-12 13:24:20 4098 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2016-12-12 13:24:20 4098 [Note] InnoDB: Memory barrier is not used
2016-12-12 13:24:20 4098 [Note] InnoDB: Compressed tables use zlib 1.2.7
2016-12-12 13:24:20 4098 [Note] InnoDB: Using CPU crc32 instructions
2016-12-12 13:24:20 4098 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2016-12-12 13:24:20 4098 [Note] InnoDB: Completed initialization of buffer pool
2016-12-12 13:24:20 4098 [Note] InnoDB: Highest supported file format is Barracuda.
2016-12-12 13:24:20 4098 [Note] InnoDB: 128 rollback segment(s) are active.
2016-12-12 13:24:20 4098 [Note] InnoDB: Waiting for purge to start
2016-12-12 13:24:20 4098 [Note] InnoDB: 5.6.34 started; log sequence number 1625977
2016-12-12 13:24:20 4098 [Note] RSA private key file not found: /mydata/data//private_key.pem. Some authentication plugins will not work.
2016-12-12 13:24:20 4098 [Note] RSA public key file not found: /mydata/data//public_key.pem. Some authentication plugins will not work.
2016-12-12 13:24:20 4098 [Note] Binlog end
2016-12-12 13:24:20 4098 [Note] InnoDB: FTS optimize thread exiting.
2016-12-12 13:24:20 4098 [Note] InnoDB: Starting shutdown...
2016-12-12 13:24:21 4098 [Note] InnoDB: Shutdown completed; log sequence number 1625987
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:

/usr/local/mysql/bin/mysqladmin -u root password 'new-password'
/usr/local/mysql/bin/mysqladmin -u root -h test password 'new-password'

Alternatively you can run:

/usr/local/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 . ; /usr/local/mysql/bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl

cd mysql-test ; perl mysql-test-run.pl

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

The latest information about MySQL is available on the web at

http://www.mysql.com

Support MySQL by buying support/licenses at http://shop.mysql.com

New default config file was created as /usr/local/mysql/my.cnf and
will be used by default by the server when you start it.
You may edit this file to change server settings

WARNING: Default config file /etc/my.cnf exists on the system
This file will be read by default by the MySQL server
If you do not want to use this, either remove it, or use the
--defaults-file argument to mysqld_safe when starting the server

-------------------------------------------------------------------------------------------------------------------------

可能出现的错误:

bash: ./scripts/mysql_install_db: /usr/bin/perl: bad interpreter: No such file or directory

安装 perl 后问题解决

-------------------------------------------------------------------------------------------------------------------------

 4、配置文件

# cp support-files/my-default.cnf /etc/my.cnf

5、添加到服务

# cp support-files/mysql.server /etc/rc.d/init.d/mysqld

# chkconfig --add mysqld

# chkconfig mysqld on

6、添加到环境变量

# echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile

添加到 /etc/profile 后,为什么没有生效呢?

别忘了执行下一步:

# source /etc/profile

7、启动

# service mysqld start

8、测试

# mysql -uroot -p

初始没有密码,直接回车

登录成功

测试

9、设置密码

方式一:

# mysqladmin -uroot password 要设置的密码(加不加引号都可以)

或者
# mysqladmin -u用户名 -p旧密码 password 新密码(加不加引号都可以)

方式二:

mysql> SET PASSWORD FOR '用户名'@'主机' = PASSWORD('密码');

方式三:

mysql> update mysql.user set authentication_string=PASSWORD('要设置的密码') where user='root';

mysql> flush privileges; # 刷新数据库权限

10、创建用户

1)创建用户

mysql> create user '用户名'@'%' identified by '密码';

2)创建用户并授权

mysql> grant all privileges on *.* to 用户名@'%' identified by '密码' with grant option;

mysql> flush privileges;# 刷新数据库权限

五、常用命令

  • 启动:service mysqld start
  • 停止:service mysqld stop
  • 重启:service mysqld restart
  • 重载配置:service mysqld reload

MySQL【第一篇】安装的更多相关文章

  1. 【OpenCV入门指南】第一篇 安装OpenCV

    http://blog.csdn.net/morewindows/article/details/8225783/ win10下vs2015配置Opencv3.1.0过程详解(转) http://ww ...

  2. 详解MySQL第一篇—MySQL简要介绍及DDL语句

    背景:近几年,开源数据库逐渐流行起来.由于具有免费使用.配置简单.稳定性好.性能优良等优点,开源数据库在中低端应用上占据了很大的市场份额,而 MySQL 正是开源数据库中的杰出代表.MySQL 数据库 ...

  3. MySQL 第一篇

    一.MySQL介绍 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司.MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数 ...

  4. OpenResty 安装及使用(第一篇安装)

    OpenResty搭建 1.openResty介绍 OpenResty (也称为 ngx_openresty)是一个全功能的 Web 应用服务器.它打包了标准的 Nginx 核心,很多的常用的第三方模 ...

  5. mycat操作MySQL第一篇:全局表

    1.安装mycat,点击bin下面startup_nowrap.bat启动 2.客户端连接mycat:server.xml里面的 <!--连接mycat用户名和密码.数据库--> < ...

  6. MySQL 第一篇:初识数据库

    一 数据库管理软件的由来 基于我们之前所学,数据要想永久保存,都是保存于文件中,毫无疑问,一个文件仅仅只能存在于某一台机器上. 如果我们暂且忽略直接基于文件来存取数据的效率问题,并且假设程序所有的组件 ...

  7. Oracle学习第一篇—安装和简单语句

    一 安装  10G ----不适合Win7 Visual Machine-++++Visual Hard Disk 先安装介质(VM)---便于删除 11G-----适合Win7 1 把win64_1 ...

  8. MySQL基础篇——安装、管理

    MySQL 安装 所有平台的 MySQL 下载地址为https://dev.mysql.com/downloads/mysql/ .挑选你需要的 MySQL Community Server 版本及对 ...

  9. 第一篇 -- 安装和配置PyQt5

    我的电脑环境是:Win10 + Python3.6.4 + JetBrains PyCharm 2017.3.2 x64 之前用tkinter写界面,现在学习如何用PyQt5写界面. 安装PyQt5: ...

  10. Node 之 Express 学习笔记 第一篇 安装

    最近由于工作不忙,正好闲暇时间学学基于 node 的 web开发框架. 现在关于web开发框架除了Express 还有新出的 KOA以及其它一些. 但是想想还是先从 Express 入手吧.因为比较成 ...

随机推荐

  1. JSON对象与JSON数组

    一个对象以"{"(左括号)开始,"}"(右括号)结束.每个"名称"后跟一个":"(冒号):""名称/ ...

  2. java中path和classpath

    Path 路径,是java编译时需要调用的程序(如java,javac等)所在的地方; CLASSPATH的作用是指定查找类的路径:当使用java命令执行一个类(类中的main方法)时,会从class ...

  3. LinearLayout按下(pressed)或获取焦点(focused)时背景设置不同颜色或图片

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id=&qu ...

  4. 【HDOJ】1074 Doing Homework

    最开始以为是贪心,不过写到一半发现不对,看了一下讨论,知道需要使用状态压缩DP,现在还没有使用深搜实现(据说可以)晚上实现一下,道理应该是类似的.前面做八数码,至今未果,就说需要状态压缩.这个太神奇了 ...

  5. 校园网之MentoHUST安装与使用

    作用:MentoHUST可以解决校园网锐捷客户端与Windows的兼容性问题,可以解决安装虚拟机之后虚拟机网卡与本地网卡冲突的问题,可以做到愉快的用校园网,并可以愉快的用校园网开Wifi给自己或者小伙 ...

  6. 【转】Ubuntu下配置支持Windows访问的samba共享

    原文网址:http://blog.csdn.net/i_chips/article/details/19191957 一.安装Ubuntu samba服务器 $ sudo apt-get instal ...

  7. [译]PyUnit—Python单元测试框架(1)

    1. 原文及参考资料 原文链接:http://docs.python.org/2/library/unittest.html# 参考文档: http://pyunit.sourceforge.net/ ...

  8. [Tommas] dateadd() 函数用法

    DATEADD() 函数在日期中添加或减去指定的时间间隔. 语法 DATEADD(datepart,number,date) date 参数是合法的日期表达式.number 是您希望添加的间隔数:对于 ...

  9. iPhone 崩溃日志解析

    方法一.在编译时保留xx.app, xx.app.dSYM在/user目录下,xcode->orgernize->Device Logs就能够自动部分定位地址 方法二.xcode 有自带的 ...

  10. window上使用GIT的个人经验(入门级)

    0.安装 使用google上的msysgit http://code.google.com/p/msysgit/downloads/list 尽量用最新版的吧 1.KEY 关于 key,.ssh里面的 ...