初级阶段的课程已经学完,现在进入第二阶段。今天来讲数据库的部署。
数据库管理系统(DataBase Management System, DBMS)
SQL(Structured Query Language 即结构化查询语言)
现在用的版本是 Mysql5.7
部署MYSQL数据库
一:通过配置官方yum源下载安装包部署。
官方地址www.mysql.com往下翻
复制下载链接,在虚拟机用wget下载,然后用yum进行安装之后就会配置好一个官方yum源。用yum下载mysql和mysql.server
1.接下来安装相关软件
[root@localhost ~]# yum install -y net-tools.x86_64 libaio.x86_64 perl.x86_64
2.安装相关服务器
[root@localhost ~]# yum install -y mysql-community*
如果出现报错,与软件冲突就通过yum -y remove把冲突软件卸载(mysql和)
3.启动mysql服务器
[root@localhost ~]#systemctl start mysqld 启动
[root@localhost ~]#systemctl enable mysqld 开机自起
[root@localhost ~]#systemctl status mysqld 查看状态
4.查询mysql服务器默认密码
[root@localhost ~]# grep 'password' /var/log/mysqld.log
5.修改mysql服务器默认密码
[root@localhost ~]# mysqladmin -uroot -p'es,W;ya(K1Th' password 'QianFeng@123'
6.登录mysql系统
[root@localhost ~]# mysql -uroot -p'QianFeng@123'
7.查询默认数据库
mysql> show databases;
实验完成
第二种方式是通过一些国内的mysql镜像站,如中国科技大学开源软件镜像http://mirrors.ustc.edu.cn/
下载软件包
[root@localhost ~]# wget http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7/mysql-community-server-5.7.29-1.el7.x86_64.rpm
[root@localhost ~]#wget http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7/mysql-community-client-5.7.29-1.el7.x86_64.rpm
[root@localhost ~]# wget http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7/mysql-community-common-5.7.29-1.el7.x86_64.rpm
[root@localhost ~]# wget http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7/mysql-community-libs-5.7.29-1.el7.x86_64.rpm
之后安装相关软件和上面一样。
三:源码包安装
源码安装
与二进制(RPM)发行版本相比,如果我们选择了通过源代码进行安装,那么在安装过程中我们能够对MySQL
所做的调整将会更多更灵活一些。因为通过源代码编译我们可以:
a) 针对自己的硬件平台选用合适的编译器来优化编译后的二进制代码;
b) 根据不同的软件平台环境调整相关的编译参数;
c) 针对我们特定应用场景选择需要什么组件不需要什么组件;
d) 根据我们的所需要存储的数据内容选择只安装我们需要的字符集;
e) 同一台主机上面可以安装多个MySQL;
f) 等等其他一些可以根据特定应用场景所作的各种调整。
在源码安装给我们带来更大灵活性的同时,同样也给我们带来了可能引入的隐患:
a) 对编译参数的不够了解造成编译参数使用不当可能使编译出来的二进制代码不够稳定;
b) 对自己的应用环境把握失误而使用的优化参数可能反而使系统性能更差;
c) 还有一个并不能称之为隐患的小问题就是源码编译安装将使安装部署过程更为复杂,所花费的时间更长;
1.准备编译环境
# yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make cmake
# wget http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
2.安装mysql
准备源码包
首先要有一个源码包,从网上找一个mysql-5.7.19.tar.gz 和 boost_1_59_0.tar.gz
# groupadd mysql 创建分组
# useradd -r -g mysql -s /bin/false mysql 创建指定一个无法登录的指定分组的用户mysql
# tar xvf mysql-5.7.19.tar.gz 解压源码包
# cd mysql-5.7.19 进入包里
[root@mysql3 mysql-5.7.19]# pwd
/root/mysql-5.7.19 查看当前目录
# mv ../boost_1_59_0.tar.gz . 移动源码包到当前路径
[root@mysql3 mysql-5.7.19]# tar xf boost_1_59_0.tar.gz 解压 注意位置
配置
[root@mysql-5.7.17 ~]# cmake . \
-DWITH_BOOST=boost_1_59_0/ \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/etc \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DINSTALL_MANDIR=/usr/share/man \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1
编译:# make
安装:#make install
初始化
# cd /usr/local/mysql
# mkdir mysql-files
# chown -R mysql.mysql /usr/local/mysql 修改目录权限 注意目录名字
# /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data 会产生一个临时密码,一定要保存下来
# /usr/local/mysql/bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
建立MySQL配置文件my.cnf
备份原有配置文件[root@localhost mysql]# mv /etc/my.cnf ~
# vim /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
开机启动mysql
# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
# chkconfig --add mysqld 添加mysql服务
# chkconfig mysqld on 开机自启mysql服务
# systemctl start mysqld
# ps aux |grep mysqld
/usr/local/mysql/bin/mysql -u root -p'x/dwiQ2
# /usr/local/mysql/bin/mysqladmin -u root -p 'x/dwiQ2
show databases; 看到库即可。