mysql-5.7.17二进制包安装

部署环境:

[root@miner_k lib]# cat /etc/redhat-release 
CentOS release 6.8 (Final)

参考链接:https://dev.mysql.com/doc/refman/5.7/en/data-directory-initialization-mysqld.html

常见知识点:

DBMS 数据库管理系统(Database Management System)
RDBMS 关系数据库管理系统(Relational Database Management System)

SQL语言的种类:
DML:Data Manapulate Language: 数据操作语言
        INSERT, REPLACE, UPDATE, DELETE

DDL:Data Defination Lanuage: 数据定义语言
        CREATE, ALTER, DROP

DCL:Data Control Language: 数据控制语言
        GRANT, REVOKE

MySQL的安装

RPM包的安装
[root@miner_k ~]# yum -y install mysql-server mysql
二进制包的安装

在安装二进制的MySQL需要注意一下几点:

 1. 清除rpm或者是yum安装的mysql 
 2. 确保配置文件已经删除,例如:/etc/my.cnf 、 /etc/mysql 
 3. MySQL依赖libaio库,故要确保安装该库文件
[root@miner_k ~]# wget https://downloads.mysql.com/archives/get/file/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql
shell> cd /usr/local
shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
shell> ln -s full-path-to-mysql-VERSION-OS mysql

#切换到数据库的basedir目录下
[root@miner_k mysql]# cd mysql   

# 用来存放系统变量secure_file_priv的值,限制导入和导出的
[root@miner_k mysql]# mkdir mysql-files 
[root@miner_k mysql]# chmod 750 mysql-files

#确保mysql用户有权限
[root@miner_k mysql]# chown -R mysql .
[root@miner_k mysql]# chgrp -R mysql .

# MySQL 5.7.6之前使用的初始化命令
[root@miner_k mysql]# bin/mysql_install_db --user=mysql    

# MySQL 5.7.6开始使用的初始化命令
[root@miner_k mysql]# bin/mysqld --initialize --user=mysql
2017-07-03T05:47:41.665070Z 1 [Note] A temporary password is generated for root@localhost: Ow(0SW.ky.NN 

#创建SSL 和 RSA,自动设置安全连接MySQL 5.7.6已上
[root@miner_k mysql]# bin/mysql_ssl_rsa_setup     

#设置文件的所有权       
[root@miner_k mysql]# chown -R root .
[root@miner_k mysql]# chown -R mysql data mysql-files
#注:如果mysql服务创建一些文件,例如SELECT ... INTO DUMPFILE.创建的目录,要保证改目录或者是文件能被mysql服务读取。权限设置和mysql-files类似。
数据库初始化:

数据库的初始化主要是生成’root’@’localhost’账户的随机密码

shell> bin/mysqld --initialize --user=mysql
shell> bin/mysqld --initialize-insecure --user=mysql
参数:

    --initialize   为mysql的root用户生成随机密码
    --initialize-insecure  不生成密码。如果已经提前设置好了密码。
    --user=mysql   如果是使用mysql登录,可以忽略
    --basedir=/opt/mysql/mysql    安装目录
    --datadir=/opt/mysql/mysql/data    数据目录
    --defaults-file=/opt/mysql/mysql/etc/my.cnf    调用配置文件

将datadir设置为其他位置:

#创建数据库的数据存放位置并设置权限
[root@miner_k mysql]# mkdir /var/lib/mysql
[root@miner_k mysql]# chown -R mysql:mysql /var/lib/mysql

#切换到安装路径
[root@miner_k mysql]# cd /usr/local/mysql

#初始化数据库(空密码)
[root@miner_k mysql]# bin/mysqld --initialize-insecure --user=mysql --datadir=/var/lib/mysql/

#修改配置文件,方便mysql服务加载到对应的文件
[root@miner_k local]# cat /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql/
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
[client] 
port=3306 
socket=/var/lib/mysql/mysql.sock 
default-character-set=utf8

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

加载的配置文件:
mysql的配置文件:
/etc/my.cnf —> /etc/mysql/my.cnf —> BASEDIR/my.cnf> B A S E D I R / m y . c n f − − − > DATADIR/my.cnf —> ~/.my.cnf
配置文件的后一个会覆盖前一个。

启动mysqld

[root@miner_k mysql]# service mysqld start



#mysql启动的两种方式:
shell> bin/mysqld_safe --user=mysql &
# Next command is optional
shell> cp support-files/mysql.server /etc/init.d/mysql.server


[root@miner_k mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@miner_k mysql]# chkconfig --add mysqld

配置环境变量
[root@miner_k ~]# vim /etc/profile.d/mysqld.sh
export PATH=$PATH:/usr/local/mysql/bin
[root@miner_k ~]# source /etc/profile.d/mysqld.sh

源码包的安装
安装完软件之后的操作
输出man手册

安装源码包的mysql,想通过man查找mysql的帮助手册

[root@miner_k MySQL]# pwd 
/usr/local/mysql 
[root@miner_k mysql]# ls 
bin COPYING docs include lib man README share support-files

[root@miner_k mysql]# vim /etc/man.config 
MANPATH /usr/local/mysql/man
输出库文件
[root@miner_k mysql]# vim /etc/ld.so.conf.d/mysql-5.7.17-x86_64.conf
/usr/local/mysql/lib
[root@miner_k mysql]# ldconfig -v
ldconfig: /etc/ld.so.conf.d/kernel-2.6.32-696.1.1.el6.x86_64.conf:6: duplicate hwcap 1 nosegneg
/usr/local/mysql/lib:
    libmysqlclient.so.20 -> libmysqlclient.so.20.3.4
输出头文件
[root@miner_k mysql]# ln -sv /usr/local/mysql/include/ /usr/include/mysql
`/usr/include/mysql' -> `/usr/local/mysql/include/'
连接mysql服务器

设置环境变量:

[root@miner_k local]# vim /etc/profile.d/mysqld.sh
export PATH=$PATH:/usr/local/mysql/bin
[root@miner_k local]# source /etc/profile.d/mysqld.sh 

1.初次连接到mysql服务器


#初始化使用密码
shell> mysql -u root -p
Enter password: (enter the random root password here)
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

#初始化使用空密码
[root@miner_k local]# mysql
mysql的帮助

mysql中的帮助文档中:

1.”[“和”]” 中的内容是可有可无的可供选择
DROP TABLE [IF EXISTS] tbl_name
2.“|”表示某一个被选择
TRIM([[BOTH | LEADING | TRAILING] [remstr] FROM] str)
3.”{“和”}”中的内容表示必须被选择
{DESCRIBE | DESC} tbl_name [col_name | wild]
4.交互模式中的命令
客户端命令:(可以用"\"+"字母"的形式表示)
mysql> ?

List of all MySQL commands:
Note that all text commands must be first on line and end with ';'
?         (\?) Synonym for `help'.
clear     (\c) Clear the current input statement.
connect   (\r) Reconnect to the server. Optional arguments are db and host.
delimiter (\d) Set statement delimiter.
edit      (\e) Edit command with $EDITOR.
.......
nowarning (\w) Don't show warnings after every statement.
resetconnection(\x) Clean session context.
服务器端的命令:(必须使用语句结束符,默认为分号)
mysql> help create
Many help items for your request exist.
To make a more specific request, please type 'help <item>',
where <item> is one of the following
topics:
   CREATE DATABASE
   CREATE EVENT
   CREATE FUNCTION
   ......
   SHOW CREATE USER
   SPATIAL
mysql的语句
查看变量

查看服务的所有变量
mysql> show global variables;

查看服务器的某一个变量
mysql> show global variables like ‘version’;

查看服务器的状态变量
mysql> show global status;
mysql> show global status like ‘%threads%’;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值