MySQL:mysql是一种开放源代码的关系型数据库管理系统(RDBMS),使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。
1、基本环境检测
关闭mysql服务(不用管提示什么,只要执行了就行):
<code>[root@one ~]# cd /home/ [root@one home]# systemctl stop mysqld.service Failed to stop mysqld.service: Unit mysqld.service not loaded. [root@one home]# /<code>
检测是否有安装过的mysql程序:
<code>[root@one home]# rpm -qa | grep mysql [root@one home]# /<code>
我的linux服务器上没有已安装的,如果有的话就会显示安装包,那么我们就应该将他们卸载掉:
<code>[root@one home]# rpm -e 程序包名字/<code>
2、下载mysql的repo源(即,新加一个yum源)
<code>[root@one home]# cd package/ [root@one package]# wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm/<code>
而后会显示如下界面:
而后查看一下:
这个时候我们可以把第一节里面解压出来的nginx程序包删除掉
<code>[root@one package]# ls mysql57-community-release-el7-8.noarch.rpm nginx-1.14.2 nginx-1.14.2.tar.gz [root@one package]# rm -rf nginx-1.14.2 [root@one package]# ls mysql57-community-release-el7-8.noarch.rpm nginx-1.14.2.tar.gz [root@one package]# /<code>
3、mysql安装
<code>[root@one package]# rpm -ivh mysql57-community-release-el7-8.noarch.rpm [root@one package]# yum -y install mysql-server/<code>
会出现如下界面:
出现如下界面,且中途没有 “ERROR” 字样就表示安装成功了
4、启动mysql,并查验默认密码
<code>[root@one package]# systemctl start mysqld.service [root@one package]# cat /var/log/mysqld.log | grep password 2020-03-20T00:35:24.930864Z 1 [Note] A temporary password is generated for root@localhost: d,!HkpBli4wk [root@one package]# /<code>
可以看出我的默认密码是:d,!HkpBli4wk
5、登录mysql,修改默认密码
<code>[root@one package]# mysql -uroot -p Enter password: /<code>
输入第4步查出来的密码,而后出现如下界面:
我们输入命令,进行用户密码修改(PS:密码一定要设立的复杂点儿,应该有默认的校验规则):
我在此处设立的密码是:Nihaowohao@123456
<code>mysql> alter user 'root'@'localhost' identified by 'Nihaowohao@123456'; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> /<code>
6、修改默认端口号
<code>mysql> mysql> exit Bye [root@one package]# vim /etc/my.cnf/<code>
添加端口参数:
port=3316
而后重启一下mysql服务,然后再检查一下端口:
<code>[root@one package]# systemctl restart mysqld.service [root@one package]# netstat -tunlp | grep 3316 tcp6 0 0 :::3316 :::* LISTEN 34994/mysqld [root@one package]# /<code>
7、修改mysql数据库存放位置
默认的mysql数据存放位置都是在 /var/lib/mysql ,但是实际环境中我们要找到空间最大的那个目录,进行数据的存放,所以需要改一下mysql数据存储目录:
(PS:一定要记得先关闭数据库哦)
<code>[root@one mysql]# systemctl stop mysqld.service [root@one package]# vim /etc/my.cnf/<code>
修改 datadir 和 socket 参数:
在配置文件中最后面新添加一个 [mysql] 模块:
复制原数据存放位置到新存放位置,而后修改名字:
<code>[root@one mysql]# cp -r -p /var/lib/mysql /home/ [root@one mysql]# cd .. [root@one home]# ls mysql nginx package [root@one home]# mv mysql mysql_data [root@one home]# ls mysql_data nginx package [root@one home]# /<code>
为了验证我们目录确实替换成功了,可以把原目录进行改名字,之后启动mysql服务:
<code>[root@one home]# mv /var/lib/mysql /var/lib/mysql_back [root@one home]# systemctl status mysqld.service/<code>
出现如下界面,就说明我们成功了:
8、新增用户,给新用户设立远程权限
<code>[root@one home]# mysql -uroot -p mysql> create user huaxin@localhost identified by 'Nihao@123456'; Query OK, 0 rows affected (0.00 sec) mysql> grant all privileges on *.* to huaxin@'%' identified by 'Nihao@123456'; Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> exit Bye [root@one home]# firewall-cmd --add-port=3316/tcp --permanent success [root@one home]# firewall-cmd --reload success [root@one home]# /<code>
9、使用客户端进行验证
至此,mysql搭建就完事儿了。
附加:
有同学可能觉得mysql密码复杂校验性太难记了,但是个人建议,线上的还是复杂点儿好,不要动他。也建议从平时就习惯此操作,如果实在觉得难记,可以在mysql配置文件 /etc/my.cnf 中添加一个参数: validate_password=off
<code>[root@one home]# vim /etc/my.cnf/<code>
而后重启mysql服务,之后再次设置密码的时候就可以随意设置了。
继续加油哦~~~