Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

时间:2023-03-09 02:30:47
Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

♣安装的几种方法和比较

♣配置yum源

安装mysql

启动mysql

修改密码

♣导入.sql文件

♣缓存设置

♣允许远程登录(navicat)

♣配置编码为utf8


 1.关于Linux系统的软件安装方法有很多种,目前常用是二进制安装,rpm安装,源代码安装,对这几种安装方法都有优点和缺点,现在将这些安装方法总结如下:

   二进制包:安装简单,可以任意选择购软件版本,不需要编译,直接初始化就行了

   rpm安装:此安装方法需要解决依赖包,可以安装指定软件版本

   源代码:安装比较复杂,也需要解决依赖问题,不过可以指定需要的模块和启动某个功能

2.配置yum源

MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo/yum/

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

2.1下载mysql源安装包

wget http://dev.mysql.com/get/mysql57-community-release-el5-8.noarch.rpm

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

输入命令后报错,解决方法如下:

因为域名供应商用了自己签的证书,lftp 不信任它,为了防止中间人攻击,拒绝继续操作。解决办法很简单。只要你能充分相信你的host,只需要在wget后面加上--no-check-certificate就可以,需要一个认证下载指令而已。所以指令改为:

wget --no-check-certificate http://dev.mysql.com/get/mysql57-community-release-el5-8.noarch.rpm

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

 2.2安装mysql源

输入指令: yum localinstall mysql57-community-release-el5-8.noarch.rpm

后显示如下:

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

报错:Public key for mysql57-community-release-el5-8.noarch.rpm is not installed

解决方案:此时要导入rpm的签名信息即可(我的linux版本是centos 5.11)

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

再执行

sudo rpm -Uvh mysql57-community-release-el5-8.noarch.rpm

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

2.3检查mysql源是否安装成功

yum repolist enabled | grep "mysql.*-community.*"

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

看到上图所示表示yum源配置成功

3.安装mysql

下载mysql,指令:yum install mysql-community-server

如下图,下载中

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

下载成功后自动安装,如下图:

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

4.启动mysql

  --------------------mysql指令参考-----------------------------

验证MySQL服务器的状态:   service mysqld status

验证所安装的MySQL版本:   mysql --version

启动mysql: service mysqld start

停止mysql: service mysqld stop

查看mysql相关进程: ps aux | grep mysqld

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

4.1执行mysql初始化然后启动

/usr/sbin/mysqld --initialize --user=mysql --datadir=/var/lib/mysql

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

4.2启动失败,打开MySQL的日志文件,输入命令:

vim /var/log/mysqld.log

得到如下报错日志:/tmp没有权限

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

解决方案(出现错误一定要看日志,才能针对问题给出解决方案):chmod 777 /tmp

如下解决:

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

最终启动成功:

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

5. 修改密码

mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过下面的方式找到root默认密码,然后登录mysql进行修改:

grep 'temporary password' /var/log/mysqld.log

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

输入指令  mysql -u root -p  准备登录

输入默认密码登录进入后,输入指令  ALTER USER 'root'@'localhost' IDENTIFIED BY '0821';  准备将root用户的密码设置为0821,结果出错

注意:mysql5.7默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements错误,如下图所示:

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

所以将密码改为符合规则就可以了。

比如  set password for 'root'@'localhost'=password('MyNewPass4!');

通过msyql环境变量可以查看密码策略的相关信息:

show variables like '%password%';

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

validate_password_policy:密码策略,默认为MEDIUM策略 
   validate_password_dictionary_file:密码策略文件,策略为STRONG才需要 
   validate_password_length:密码最少长度 
   validate_password_mixed_case_count:大小写字符长度,至少1个 
   validate_password_number_count :数字至少1个 
   validate_password_special_char_count:特殊字符至少1个

6.导入.sql文件

  假设现在要在mysql中导入数据库Pr_exam,

6.1建立数据库:

mysql> create database pr_myexam;

6.2进入数据库:

mysql> use  pr_myexam;

6.3设置编码:

mysql> set names utf8;

如下图:

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

6.4导入数据库 pr_myexam.sql

输入你所导入到Centos下的数据库文pr_myexam.sql文件的位置

mysql>source /data/pr_myexam.sql;

pr_myexam.sql文件使用xtfp工具上传到/data文件夹下:

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

接着你会看到屏幕上很多查询语句的成功,然后就OK了。

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

退出数据库:mysql > exit;

7.缓存设置

MySQL配置文件在Windows下叫my.ini,在MySQL的安装根目录下;在Linux下叫my.cnf,该文件位于/etc/my.cnf 。

注意:我们要修改my.cnf文件下的缓存设置,不然会因为mysql吃内存导致奔溃。

在配置文件my.cnf中,默认的Initializing buffer pool, size = 128.0M (假设我们的服务器只有1G内存,而且我们有5个缓冲池,那么Mysql的缓冲池就要占用系统5*128M的大小)如果你用innodb 这个值简直就不可想象啊!

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

8.允许远程登录

在服务器中登录mysql后,输入:

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;

如下图所示:

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

然后在你的windowPC上的navicat客户端中新建一个连接,如下配置:

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

9.配置编码为utf8

第8步成功远程连接mysql后,输入查询语句:

show variables like '%character%';

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

发现需要更改mysql的编码,使用xftp工具,打开   /etc/my.cnf

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

将my.cnf文件传输到本地更改最后再提交(也可以通过shell命令更改),更改的内容就是添加:

character-set-server=utf8

如下图所示:

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

最后重启mysql服务即可。

修改mysql编码配置后,同样在远程navicat中输入查询语句得到:

Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

如果是在windows环境中更改mysql的编码,则到mysql安装目录的my.ini修改即可。


 欢迎访问我的个人技术博客:xuncr.cn或者xuncr.com(讯C网)


right|alston&思维焦点,原创不易,请尊重原创。