
MySQL 5.6版本3种安装步骤
Mysql版本选择:
- 选择GA版本6-12月产品(GA稳定版)
- MYSQL常用版本5.6.34 5.6.36 5.6.38 5.7.18 5.7.20
1.yum快速安装5.6
1)检查系统中是否已安装 MySQL。
rpm -qa | grep mysql2)查看已安装的 Mariadb 数据库版本。
rpm -qa|grep -i mariadb3)卸载已安装的 Mariadb 数据库。
rpm -qa|grep mariadb|xargs rpm -e --nodeps4)再次查看已安装的 Mariadb 数据库版本,确认是否卸载完成。
rpm -qa|grep -i mariadb5)下载安装包文件。
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm6)安装mysql-community-release-el7-5.noarch.rpm包
rpm -ivh mysql-community-release-el7-5.noarch.rpm安装完成之后,会在 /etc/yum.repos.d/ 目录下新增 mysql-community.repo 、mysql-community-source.repo 两个 yum 源文件。
执行 yum repolist all | grep mysql 命令查看可用的 mysql 安装文件。[root@GPub ~]# yum repolist all | grep mysql mysql-connectors-community/x86_64 MySQL Connectors Community enabled: 108 mysql-connectors-community-source MySQL Connectors Community - disabled mysql-tools-community/x86_64 MySQL Tools Community enabled: 90 mysql-tools-community-source MySQL Tools Community - Sour disabled mysql55-community/x86_64 MySQL 5.5 Community Server disabled mysql55-community-source MySQL 5.5 Community Server - disabled mysql56-community/x86_64 MySQL 5.6 Community Server enabled: 463 mysql56-community-source MySQL 5.6 Community Server - disabled mysql57-community-dmr/x86_64 MySQL 5.7 Community Server D disabled mysql57-community-dmr-source MySQL 5.7 Community Server D disabled7)安装mysql。
yum install mysql-server8)设置密码 。
mysql5.6 安装完成后,它的 root 用户的密码默认是空的,我们需要及时用 mysql 的 root 用户登录(第一次直接回车,不用输入密码),并修改密码。
# mysql -u root mysql> use mysql; mysql> update user set password=PASSWORD("这里输入root用户密码") where User='root'; mysql> flush privileges;9)设置远程主机登录
mysql> GRANT ALL PRIVILEGES ON *.* TO 'your username'@'%' IDENTIFIED BY 'your password'; 执行以下命令,为root 用户添加远程登录的能力。 mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "123456";
2.源码编译Mysql-5.6.38
1.安装依赖
[root@CentOS7 ~]# yum install -y ncurses-devel libaio-devel [root@CentOS7 ~]# yum install cmake -y [root@CentOS7 ~]# useradd -s /sbin/nologin -M mysql2.编译安装
[root@mysql01 ~]#cd /server/tools/ [root@mysql01 tools]#tar xf mysql-5.6.38.tar.gz [root@mysql01 mysql-5.6.38]#cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.38 \ > -DMYSQL_DATADIR=/application/mysql-5.6.38/data \ > -DMYSQL_UNIX_ADDR=/application/mysql-5.6.38/tmp/mysql.sock \ > -DDEFAULT_CHARSET=utf8 \ > -DDEFAULT_COLLATION=utf8_general_ci \ > -DWITH_EXTRA_CHARSETS=all \ > -DWITH_INNOBASE_STORAGE_ENGINE=1 \ > -DWITH_FEDERATED_STORAGE_ENGINE=1 \ > -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ > -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \ > -DWITH_ZLIB=bundled \ > -DWITH_SSL=bundled \ > -DENABLED_LOCAL_INFILE=1 \ > -DWITH_EMBEDDED_SERVER=1 \ > -DENABLE_DOWNLOADS=1 \ > -DWITH_DEBUG=0 -- Running cmake version 2.8.12.2 …… -- Build files have been written to: /server/tools/mysql-5.6.38 [root@mysql01 ~]#make && make install [root@mysql01 mysql-5.6.38]#ls bin COPYING data docs include lib man mysql-test README scripts share sql-bench support-files [root@mysql01 mysql-5.6.38]#ln -s /application/mysql-5.6.38/ /application/mysql [root@mysql01 ~]#rm -fr /etc/my.cnf*3.初始化系统数据:
[root@mysql01 scripts]#./mysql_install_db --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data [root@mysql01 scripts]# mkdir /application/mysql/tmp [root@mysql01 scripts]# chown -R mysql:mysql /application/mysql/4.启动数据库:
[root@mysql01 bin]#vim /etc/profile export PATH=/application/mysql/bin:$PATH [root@mysql01 bin]#source /etc/profile [root@mysql01 mysql]#cp support-files/mysql.server /etc/init.d/mysqld [root@mysql01 mysql]#chmod 700 /etc/init.d/mysqld [root@mysql01 mysql]#/etc/init.d/mysqld status SUCCESS! MySQL running (21680) [root@mysql01 mysql]#/etc/init.d/mysqld restart Shutting down MySQL.. SUCCESS! Starting MySQL. SUCCESS!5.设置数据库密码:
[root@mysql01 mysql]#mysqladmin -uroot password 123 [root@mysql01 mysql]#mysql -uroot -p123 Warning: Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 Server version: 5.6.38 Source distribution6.清理用户及无用数据库(基本优化)
1.删除没有用户和没有密码 1.mysql> select user .host,password from mysql.user; +-----------+-------------------------------------------+ | host | password | +-----------+-------------------------------------------+ | localhost | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 | | mysql01 | | | 127.0.0.1 | | | ::1 | | | localhost | | | mysql01 | | +-----------+-------------------------------------------+ 6 rows in set (0.00 sec) 2.mysql> drop user ''@'mysql01'; mysql> drop user ''@'localhost'; mysql> drop user 'root'@'mysql01'; mysql> drop user 'root'@'::1'; 3.mysql> select user ,host,password from mysql.user; +------+-----------+-------------------------------------------+ | user | host | password | +------+-----------+-------------------------------------------+ | root | localhost | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 | +------+-----------+-------------------------------------------+ 1 row in set (0.00 sec) 2.删除测试库 1.mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | +--------------------+ 2.mysql> drop database test; Query OK, 0 rows affected (0.00 sec) mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | +--------------------+7.如何安装关键开发包
1.yum groupinstall xxxx
3.初始化配置
1.为什么要进行初始化配置
通过初始化配置,将MySQL启动和运行必须的一些信息告知于它
2.初始化配置方法
- (1) CMAKE 时可以实现初始化配置,一般建议修改不会经常变化的数据。
- (2) 初始化配置文件/etc/my.cnf *****用的最多的方法
- (3) 命令行可以直接指定 mysql_safe
疑问一:
三种方法优先级谁更高?> 命令行 > 配置文件 > 编译安装的疑问二:
1.为什么他会读取/etc/my.cnf[root@db01 mysql]# mysqld --help --verbose|grep my.cnf2.初始化配置文件读取顺序
/etc/my.cnf ----- > /etc/my.cnf.d/my.cnf /etc/mysql/my.cnf -----> /app/mysql/etc/my.cnf ----> ~/.my.cnf重点:
/etc/my.cnf mysqld-safe --defaults-file=/opt/my.cnf #参数设定位置为默认my.cnf初始化配置文件影响范围
1.mysql-server的启动和正常运行
mysqld mysqld_safe /etc/init.d/mysqld systemd 实例: [root@db01 ~] mysql_safe --socket=/tmp/mysql.sock --port=8806 &2.影响到客户端,登录和独有的操作
mysql mysqldump3.初始化数据时
initialize-insecure