一、数据库结构+mysql下载方法
数据系统DBS 数据访问设计 数据库部署 官方下载 设置yum源mysql版本 搜索mysql临时密码grep password 设置mysql密码mysqladmin 登录mysql RPM下载 源码包下载 编译 建立mysql配置文件my.cnf 开机启动mysql 自建mysql-yum仓库
前言
1.数据可系统DBS
分类为:A.数据库管理系统DBMS:SQL关系型数据库RDS:如ORACLE,Oracle MySQL,DB2(IBM),SQL-server(MS),Mysql,MariaDB,Percona server(taobao)
B.DBA:工程师
2.SQL语言(结构化查询语言)
3.数据访问设计
A.ODBC PHP<.php>
B.JDBC JAVA<.jsp>
C.ASP.NET<c#>
部署
1.官网地址下载
www.mysql.com/ downloads下载-Enterprise企业-cluster集群-community社区 documentation文档
yum countos Redhat Fedora apt ubuntu debian
下载mysql80-community-el7-3.noarch.rpm
安装mysql80-community-el7-3.noarch.rpm
yum install -y mysql80-community-el7-3.noarch.rpm
打开mysql的yum源
vim /etc/yum.repos.d/mysql-community.repo
把[mysql80-community]的enabled=0关闭,把[mysql57-community]的enabled=1打开。
刷新缓存
yum makecache
观察yum包中的mysql是否换为5.7版本
yum list | grep mysql
安装mysql
yum install -y mysql-community* 如果有包冲突用对应命令忽略。
开启mysql服务
systemctl start mysqld
搜索mysql日志中的临时密码
grep password /var/log/mysqld.log
A tempcrary password is generated for root@localhost:567sdh_j, (root@本地主机产生了一个临时密码:567sdh_j,)
设置mysql密码
mysqladmin -uroot -p'567sdh_j,' password 'QianFeng@123'
如果发生错误
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: YES)'
使用mysql_config_editor可以实现将密码保存在一个配置中,下次登录不用输入用户名密码
login-path是MySQL5.6开始支持的新特性。通过借助mysql_config_editor工具将登陆MySQL服务的认证信息加密保存在.mylogin.cnf文件(默认位于用户主目录) 。之后,MySQL客户端工具可通过读取该加密文件连接MySQL,避免重复输入登录信 息,避免敏感信息暴露
用这条命令mysql_config_editor set --login-path=local --host=localhost --user=root --password
写入新密码
登录mysql系统
mysql -uroot -p'QianFeng@123'
2.RPM下载
关闭防火墙
sysremctl stop firewalld
systemctl disable firewalld
setenforce 0
vim /etc/seliunx/config
SELINUX=disabled
下载安装包
/mirrors.ustc.edu.cn/mysql-ftp/Downloads/
找到mysql-community-server-5.7.30-1.el7.x86_64.rpm(可能会稍微有点不一样)
mysql-community-client-5.7.30-1.el7.x86_64.rpm(可能会稍微有点不一样)
mysql-community-common-5.7.30-1.el7.x86_64.rpm(可能会稍微有点不一样)
mysql-community-libs-5.7.30-1.el7.x86_64.rpm(可能会稍微有点不一样)
其实进入界面后用ctrl+F搜关键字很容易找到
把安装包传去服务器
rz命令
或者 用复制目标下载链接在ssh窗口中用wget+粘贴链接
安装相关软件
yum install -y net-tools.x86_64 libaio.x84_64 perl.x86_64
这是官网给我们的依赖包(
Documentation-mysql server
-installing and Upgrading Mysql
-installing mysql on linux
- installing mysql on linux using the mysql yum repository中得知)
安装mysql服务器
yum install -y mysql-community*
如果有报错很可能是系统装了mariadb-libs,删除就行了
解决方法:yum remove -y mariadb-libs.x86_64
yum install -y mysql-community*
启动mysql
systemctl start mysqld
systemctl enable mysqld
systemctl status mysqld
查询mysql服务器默认密码
grep passward /var/log/mysqld.log
A tempcrary password is generated for root@localhost:567sdh_j, (root@本地主机产生了一个临时密码:567sdh_j,)
设置mysql密码
mysqladmin -uroot -p'567sdh_j,' password 'QianFeng@123'
登录mysql系统
mysql -uroot -p'QianFeng@123'
3.源码包下载
#
好处是在安装过程中能够对mysql所做的调整更灵活一些。因此可以通过源代码编译我们可以:
a针对自己的硬件平台选用合适的编译器来优化编译后的二进制代码
b根据不同的软件平台环境调整香港的编译参数
c针对我们特定应用场景选择需要什么组件,不需要什么组件
d根据我们的所需要储存耳朵数据内容选择只安装我们需要的字符集
e同一台主机上面可以安装多个mysql
在源码安装给我们带来更大灵活的同时,同样也给我们带来了可能的引入的隐患
a对编译参数的不够了解造成编译参数使用不当可能使编译出来的二进制代码不够稳定
b对主机的应用环境把握失误而使用的优化参数可能反而使系统性更差
c源码编译安装部署过程更为复炸,所花费的时间更长
#
准备编译环境
yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make cmake 编译软件
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-boost-5.7.19.tar.gz 自带boost的mysql安装包
tar xvf mysql-boost-5.7.19.tar.gz 解开mysql包
配置
————————————————————
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 注意目录名称,以后用mysql用户来管理mysql不需要因为管理数据库而每次都使用root
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql -datadir=/usr.local/mysql/data 检查清楚输入正确,会产生临时密码nxc5UoFqeF/3 初始化 用户使用↑ 东西放在↗ 数据放在↗
/usr/local/mysql/bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data ssl加密
建立mysql配置文件my.cnf
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 把mysql.server拷贝到系统启动能看到的地方
chkconfig --add mysqld 添加mysql服务
chkconfig mysqld on 开机自动启动mysql服务
systemctl start mysqld
ps aux | grep mysqld 观察是否开启了mysql程序
关于mysql -uroot -p'密码'登录出现的问题
/usr/local/mysql/bin/mysql -u root -p'nxc5UoFqeF/3' 使用临时密码登录
————————————————————————————————
show databases; 会反馈你需要使用alter user来重新设置你的密码
alter user 'root'@'localhost' identified by '123456'; 改动用户名root的本机密码为123456,如果改动失败是密码格式不符合mysql密码规则
\q 退出mysql
————————————
show databases; 会反馈你需要使用alter user来重新设置你的密码
\q 退出mysql
/user/local/mysql/bin/mysqladmin -uroot -p'nxc5UoFqeF/3' password'123456' 改动用户名root的本机密码为123456,如果改动失败是密码格式不符合mysql密码规则
————————————————————————————————
/user/local/mysql/bin/mysql -uroot -p'123456'
show databases; 成功
\q 退出
4.自建mysql-yum仓库
安装FTP
yum install -y vsftpd
准备ftp主目录
mkdir /var/ftp/mysql57
准备官网下载yum仓库的包
yum install -y mysql57-community-release-e17-11.noarch.rpm
屏蔽8.0,开启5.7
仅下载不安装mysql
yum install -y --downloadonly mysql-community-server
查找下载的mysql安装包
find /var/cache/yum/x86_64/7/ -iname"*.rpm" |xargs -i cp -rfv {} /var/ftp/mysql57
把缓存下的rpm包复制去ftp的mysql57里,xargs -i cp {}中的-i表示 find 传递给xargs的结果 由{}来代替
创建依赖关系
cd /var/ftp/mysql57
yum provides createrepo
createrepo /var/ftp/mysql
启动ftp服务
systemctl start vsftpd
————————————————————
客户机操作
自建yum仓库
vim /etc/yum.repos.d/mysql57.repo
[mysql57]
name=mysql57ghz
baseurl=ftp://192.168.153.133/mysql57
gpgcheck=0
enabled=1
安装
yum makecache
yum install -y mysql-community-server
启动mysql
systemctl start mysqld
systemctl status mysqld
grep password /var/log/mysqld.log 得出临时密码
更改密码
mysqladmin -uroot -p'asdfasdhe145' password "123456"
登录数据库
mysql -uroot -p'123456'