当前位置:首页 » 密码管理 » mariadb加密

mariadb加密

发布时间: 2022-06-25 01:49:43

A. 本地Mysql密码忘了,怎么找回

1、以管理员的身份打开cmd,然后跳过权限启动mysql,命令:xxx--skip-grant-tables 前面是mysql配置文件的位置,然后回车。

B. 如何为MySQL服务器和客户机启用SSL

用户想要与MySQL服务器建立一条安全连接时,常常依赖VPN隧道或SSH隧道。不过,获得MySQL连接的另一个办法是,启用MySQL服务器上的SSL封装器(SSL wrapper)。这每一种方法各有其优缺点。比如说,在出现多条短时间MySQL连接的高度动态环境下,VPN或SSH隧道也许是比SSL更好的选择,因为后者建立每条连接时需要成本高昂的SSL握手计算。另一方面,如果是长时间运行的MySQL连接比较少的那些应用,基于SSL的加密可能很合理。由于MySQL服务器已经内置了SSL支持功能,你不需要实施VPN或SSH隧道之类单独的安全层,这种隧道有其自己的维护开销。
在MySQL服务器中实施SSL可以加密在服务器与客户机之间来回传输的所有数据,因而防止广域网或数据中心里面可能出现的窃听或数据嗅探行为。此外,SSL还通过SSL证书提供了身份验证机制,因而可以保护用户,远离可能出现的网络钓鱼攻击。
我们在本文中将介绍如何启用MySQL服务器上的SSL。请注意:同样过程适用于MariaDB服务器。
创建Server SSL证书和私钥
我们必须为MySQL服务器创建SSL证书和私钥,通过SSL连接到服务器时要用到它们。
首先,创建一个临时的工作目录,我们将把私钥和证书文件放在该目录下。

$ sudo mkdir ~/cert $ cd ~/cert

确保OpenSSL已安装在运行MySQL服务器的系统上。通常,所有linux发行版在默认情况下都安装了OpenSSL。想检查一下OpenSSL有没有安装,不妨使用下面这个命令。

$ openssl version OpenSSL 1.0.1f 6 Jan 2014

现在,继续创建CA私钥和证书。下面这些命令将创建ca-key.pem和ca-cert.pem。

$ openssl genrsa 2048 > ca-key.pem $ openssl req -sha1 -new -x509 -nodes -days 3650 -key ca-key.pem > ca-cert.pem

第二个命令会询问你几个问题。你在这些字段里填入什么并不重要。只管填好那些字段。
下一步是为服务器创建私钥。

$ openssl req -sha1 -newkey rsa:2048 -days 730 -nodes -keyout server-key.pem > server-req.pem

这个命令会再次询问几个问题,你可以填写上一步中提供的相同答案。
下一步,使用下面这个命令,将服务器的私钥导出成RSA类型的密钥。

$ openssl rsa -in server-key.pem -out server-key.pem

最后,使用CA证书,创建服务器证书。

$ openssl x509 -sha1 -req -in server-req.pem -days 730 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 > server-cert.pem

配置MySQL服务器上的SSL
完成上述过程后,我们应该有了CA证书、服务器的私钥及其证书。下一步就是配置MySQL服务器,以便使用私钥和证书。
在配置MySQL服务器之前,检查一下SSL选项已被启用还是被禁用。为此,登录进入到MySQL服务器,输入下面这个查询。

mysql> SHOW GLOBAL VARIABLES LIKE 'have_%ssl';,

该查询的结果会如同下图。

请注意:“have_openssl”和“have_ssl”变量的默认值是“被禁用”,如下所示。想启用MySQL服务器中的SSL,继续执行下列步骤。
1. 将ca-cert.pem、server-cert.pem和server-key.pem拷贝或移动到/etc目录下。

$ sudo mkdir /etc/mysql-ssl $ sudo cp ca-cert.pem server-cert.pem server-key.pem /etc/mysql-ssl

2. 使用文本编辑工具,打开服务器的my.cnf配置文件。添加或去掉注释[mysqld]部分中类似下面内容的几行。这些应该指向你放在/etc/mysql-ssl中的私钥和证书。

[mysqld] ssl-ca=/etc/mysql-ssl/ca-cert.pem ssl-cert=/etc/mysql-ssl/server-cert.pem ssl-key=/etc/mysql-ssl/server-key.pem

3. 在my.cnf中,还要找到“bind-address = 127.0.0.1”,并将它改成:

bind-address = *

那样一来,你就可以从另一个主机连接到MySQL服务器了。
4. 重启MySQL服务。

$ sudo service mysql restart 或 $ sudo systemctl restart mysql 或 $ sudo /etc/init.d/mysql restart

你只要查看MySQL错误日志文件(比如/var/log/mysql/mysql.log),就可以检查SSL配置有没有问题。要是错误日志中没有警告或错误(就像下面的屏幕截图),这表明SSL配置没有问题。

验证SSL配置的另一个办法就是,在MySQL服务器里面再次运行“have_%ssl”查询。

mysql> SHOW GLOBAL VARIABLES LIKE 'have_%ssl';

创建拥有SSL权限的用户
服务器端的SSL配置完成后,下一步就是创建有权通过SSL访问MySQL服务器的用户。为此,登录进入到MySQL服务器,输入下面内容:

mysql> GRANT ALL PRIVILEGES ON *.* TO ‘ssluser’@’%’ IDENTIFIED BY ‘dingdong’ REQUIRE SSL; mysql> FLUSH PRIVILEGES;

把“ssluser”(用户名)和“dingdong”(密码)换成你自己的用户名和密码。
如果你想分配一个特定的IP地址(比如192.168.2.8),以便用户从该地址来访问服务器,那就改而使用下列查询。

mysql> GRANT ALL PRIVILEGES ON *.* TO ‘ssluser’@’192.168.2.8’ IDENTIFIED BY 'dingdong' REQUIRE SSL; mysql> FLUSH PRIVILEGES;

配置MySQL客户机上的SSL
鉴于MySQL服务器端配置已完成,不妨将目光转移到客户机端。就MySQL客户机而言,我们就需要基于服务器的CA私钥和证书,创建新的私钥和证书。
在服务器的CA私钥和证书驻留于其中的MySQL服务器主机上运行下列命令。

$ openssl req -sha1 -newkey rsa:2048 -days 730 -nodes -keyout client-key.pem > client-req.pem

类似服务器端配置,上述命令会询问几个问题。只管填好字段,就像前面所做的那样。
我们还需要将创建的客户机私钥转换成RSA类型,如下所示。

$ openssl rsa -in client-key.pem -out client-key.pem,

最后,我们需要使用服务器的CA私钥和证书,创建客户机证书。

$ openssl x509 -sha1 -req -in client-req.pem -days 730 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 > client-cert.pem

现在,将ca-cert.pem、client-cert.pem和client-key.pem文件转移到你想要运行MySQL客户机的任何主机上。
在客户机主机上,使用下面这个命令,通过SSL连接到MySQL服务器。

$ mysql --ssl-ca=ca-cert.pem --ssl-cert=client-cert.pem --ssl-key=client-key.pem -h -u ssluser -p

在输入ssluser的密码后,你会看到如往常那样的MySQL提示符。
想检查一下你有没有使用SSL,在提示符处输入状态命令。

mysql> status;

如果你已通过SSL连接上去,它会在SSL字段显示密码信息,如下所示。

C. centos 7.0 怎么启动mysql

mysql 有2个跟windows不同的地方
1、my.ini 保存到/etc/my.ini
2、用户权限,单独用户执行
一、下载
mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
二、建立用户,以及mysql的目录
1、groupadd mysql #建立一个mysql的组
2、useradd -r -g mysql mysql #建立mysql用户,并且把用户放到mysql组
3、passwd mysql #给mysql用户设置一个密码
三、解压mysql
1、把tar包移动到/usr/local 目录下
mv /software/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz /usr/local
2、解压
cd /usr/local
tar zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
【多出目录 mysql-5.7.17-linux-glibc2.5-x86_64】
注意:没有data 目录,my.ini 在support-files 目录
3、改一下目录名字为/usr/local/mysql (linux下mysql的默认安装安装目录)
mv mysql-5.7.17-linux-glibc2.5-x86_64 mysql
四、配置相关的启动配置文件
1、复制my.cnf 到 /etc/my.cnf (mysqld启动时自动读取)
cp my-default.cnf /etc/my.cnf
2、解决一下乱码问题
vi /etc/my.cnf
[mysql]
default-character-set=utf8
[mysqld]
default-storage-engine=INNODB
character_set_server=utf8

3、复制mysql.server 到/etc/init.d/ 目录下【目的想实现mysqld -install这样开机自动执行效
果】
【/etc/init.d/ 目录,等效于注册表HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services 记录
有那些服务】
cp mysql.server /etc/init.d/mysql (mysql是服务名)
4、修改 /etc/init.d/mysql 参数
vi /etc/init.d/mysql
给与2个目录位置
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
4、给目录/usr/local/mysql 更改拥有者
chown -R mysql:mysql /usr/local/mysql/
五、初始化 mysql 的数据库
mysql_install_db (老版本的做法)
新版本:
1.初始化
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --
datadir=/usr/local/mysql/data
生成出一个data目录,代表数据库已经初始化成功
并且mysql的root用户生成一个临时密码:SHNq8Qvd2g>L
2.给数据库加密
./mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
3.启动mysql
./mysqld_safe --user=mysql &
【检查ps -ef|grep mysql】
六、进入客户端
1.登录 ./mysql -uroot -p
2.修改密码
set password=password('123456');

七、远程访问
1、关闭防火墙或者给防火墙开放端口
systemctl stop firewalld.service
2、授权
mysql>grant all privileges on *.* to root@'%' identified by '123456';
mysql>select host,user from user; 【多出1条远程登录用户记录】
mysql>flush privileges;
八、设置开机自动启动
1、添加服务mysql
chkconfig --add mysql 【mysqld -install】
2、设置mysql服务为自动
chkconfig mysql on
3、重启检查
init 6
ps -ef|grep mysql
九、设置path
vi /etc/profile
export PATH=$JAVA_HOME/bin:/usr/local/mysql/bin:$PATH

D. centos7怎么改mysql密码

做服务器运维,修改 MySQL 的密码是经常的需要,定期修改 MySQL 密码是网站安全的一个保证。这里记录一下修改 MySQL 密码的一些命令,方便以后查看。

修改root密码

CentOS 下 MySQL 管理员帐号默认是 root 用户,密码为空。如果你从没设置过 MySQL 的密码,使用 root 用户来连接 MySQL 服务器不需要输入密码。

第一次设置root密码可以使用以下命令:

mysqladmin -u root password NEWPASSWORD
如果你已经设置过密码了,需要要以下命令:

mysqladmin -u root -p’oldpassword’ password newpass
比如说,旧密码是“12345”,新密码是“nowamagic”,执行以下命令:

mysqladmin -u root -p’12345′ password ‘nowamagic’
修改其它MySQL用户的密码

修改一个普通用户的密码你可以使用以下命令,比如用户是 nmuser:

mysqladmin -u nmuser -p oldpassword password newpass
另一种修改密码的方法是,MySQL 服务器把用户名和密码储存在 MySQL 数据库的 user 表中。你可以使用以下方法来直接更新用户 nmuser 的密码:

1. 登录mysql服务器:

mysql -u root -p
2. 选择 MySQL 数据库

mysql> use mysql;
3. 修改 nmuser 密码

mysql> update user set password=PASSWORD(“NEWPASSWORD”) where User=’nmuser’;
4. 重置权限

mysql> flush privileges;
mysql> quit
这种方法也可以用脚本php,Perl)执行,不用SSH到服务器。

E. 如何修改MySql数据库的用户名和密码

方法如下:

1、打开mysql.exe和mysqld.exe所在的文件夹,复制路径地址

(5)mariadb加密扩展阅读:

MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。

MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。

MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。

1:使用SHOW语句找出在服务器上当前存在的数据库:

mysql> SHOW DATABASES;

2:创建一个数据库MYSQLDATA

mysql> CREATE DATABASE MYSQLDATA;

3:选择你所创建的数据库

mysql> USE MYSQLDATA; (按回车键出现Database changed 时说明操作成功!)

4:查看现在的数据库中存在什么表

mysql> SHOW TABLES;

5:创建一个数据库表

mysql> CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));

6:显示表的结构:

mysql> DESCRIBE MYTABLE;

7:往表中加入记录

mysql> insert into MYTABLE values (”hyq”,”M”);

8:用文本方式将数据装入数据库表中(例如D:/mysql.txt)

mysql> LOAD DATA LOCAL INFILE “D:/mysql.txt” INTO TABLE MYTABLE;

9:导入.sql文件命令(例如D:/mysql.sql)

mysql>use database;

mysql>source d:/mysql.sql;

10:删除表

mysql>drop TABLE MYTABLE;

11:清空表

mysql>delete from MYTABLE;

12:更新表中数据

mysql>update MYTABLE set sex=”f” where name=’hyq’;

F. 数据库密码如何修改 ROOT

mysql(mariadb)如何更改root密码,第一步是切换至root用户:
mysql(mariadb)如何更改root密码,主要使用mysqladmin命令,
-u
root,是指定用户,指定修改root用户的密码。
-p
password
是密码选项,其后面的newpasswd即为新的密码。
执行结果如下:
mysql(mariadb)如何更改root密码后,尝试不输入密码进入数据库:
mysql(mariadb)如何更改root密码后,现在输入正常的密码登录:
密码输入正确,登录数据库了!

G. centos7.3怎么给数据库设置密码

1.登陆mysql或者mariadb(两种任选其一)

?

1
2

[root@localhost ~]# mysql -u root
[root@localhost ~]# mysql -uroot -p

2.切换到存储用户名和密码的数据库

?

1
2
3

MariaDB [mysql]> use mysql;回车,会显示以下内容
Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A
Database changed

3.修改密码,适用password()函数进行加密,实际上就是执行sql语句来更新指定用户的密码

?

1
2
3
4

MariaDB [mysql]> update user set password=password('新密码') where user='要更新密码的用户名';回车
-> ;
Query OK, 0 rows affected (0.00 sec)
Rows matched: 5 Changed: 0 Warnings: 0

4.刷新用户权限列表

?

1
2

MariaDB [mysql]> flush privileges;回车
Query OK, 0 rows affected (0.00 sec)

5.退出mysql登陆

?

1
2

MariaDB [mysql]> quit
Bye

6.重启mysql或者mariadb服务

?

1
2

[root@localhost ~]# service mysqld restart(重启mysql)
[root@localhost ~]# service mariadb restart(重启mariadb)

H. 在CentOS 7 上安装 phpMyAdmin 为什么出现 undefined function

前提在CentOS上安装phpMyAdmin,你第一步需要架设一台Web服务器(如Apache或nginx),安装好MySQL/MariaDB数据库和PHP。根据你的偏好和需求,你可以从LAMP和LEMP中选择一种安装。
另一个要求是允许在你的CentOS上安装EPEL库。如果你还没设置过请猛戳这里。
在CentOS6或7上安装phpMyAdmin一旦你设置了EPEL库,你就能轻松地用以下命令安装phpMyAdmin了。
在CentOS 7上:
$ sudo yum install phpmyadmin
在CentOS 7上:
$ sudo yum install phpmyadmin php-mcrypt
在CentOS 7上配置phpMyAdmin默认情况下,CentOS 7上的phpMyAdmin只允许从回环地址(127.0.0.1)访问。为了能远程连接,你需要改动它的配置。
用文本编辑器打开phpMyAdmin的配置文件(路径:/etc/httpd/conf.d/phpMyAdmin.conf),找出并注释掉带有”Require ip XXXX”字样的代码行。会有四处这样的代码行,用”Require all granted”取而代之。重新改动过的配置文件如下所示。
$ sudo vi /etc/httpd/conf.d/phpMyAdmin.conf
. . . . .
<Directory /usr/share/phpMyAdmin/>
AddDefaultCharset UTF-8

<IfMole mod_authz_core.c>
# Apache 2.4
<RequireAny>
#Require ip 127.0.0.1
#Require ip ::1
Require all granted
</RequireAny>
</IfMole>
<IfMole !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfMole>
</Directory>

<Directory /usr/share/phpMyAdmin/setup/>
<IfMole mod_authz_core.c>
# Apache 2.4
<RequireAny>
#Require ip 127.0.0.1
#Require ip ::1
Require all granted
</RequireAny>
</IfMole>
<IfMole !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfMole>
</Directory>
. . . . .
最后,重启httpd使改动生效。
$ sudo systemctl restart httpd
在CentOS 6上配置phpMyAdmin默认情况下,CentOS 6上的phpMyAdmin是禁止从每个IP地址访问的。为了能远程连接,你需要改动它的配置。
用文本编辑器打开phpMyAdmin的配置文件(路径:/etc/httpd/conf.d/phpMyAdmin.conf),找出并注释掉”Deny from all”字样的代码行。然后把”Allow from 127.0.0.1″字样的代码行改成”Allow from 0.0.0.0″。重新改动过的配置文件如下所示。
$ sudo vi /etc/httpd/conf.d/phpmyadmin.conf
<Directory "/usr/share/phpmyadmin">
Order Deny,Allow
# Deny from all
Allow from 0.0.0.0
</Directory>
下一步是将phpMyAdmin的配置文件用blowfish加密工具加密。这一步需要加密cookie里的密码来作为基于cookie的部分认证。
用文本编辑器打开如下路径所示的文件并且用blowfish设置一个随机密码,如下所示。
$ sudo vi /usr/share/phpmyadmin/config.inc.php
$cfg[‘blowfish_secret‘] = ‘kd5G}d33aXDc50!‘; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
最后,重启httpd使改动生效。
$ sudo service httpd restart
测试phpMyAdmin测试phpMyAdmin是否设置成功

I. mariadb修改mysql.user表用户密码表中为明文,无法登陆

mariadb修改mysql.user表用户密码表中为明文,无法登陆
这个是无法在mysql中看到明文的,有些密码加密是可逆的,有不可逆的,可逆的话,要看是什么算法加密,然后解密。在mysql中有:password与md5函数
password用于修改mysql的用户密码,如果是应用与web程序建议使用md5()函数,
password函数旧版16位,新版41位,可用select length(password('123456'))察看。
password函数加密不可逆,如果和数据库里加密后内容比较时可以采用password(pwd)==字段内容的方式;
md5函数加密后32位,此加密算法不可逆

J. 如何MySQL和MariaDB数据库修改root密码

方法一
使用phpmyadmin,这是最简单的了,修改mysql库的user表,
不过别忘了使用PASSWORD函数。

方法二
使用mysqladmin,这是前面声明的一个特例。
mysqladmin -u root -p password mypasswd
输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。
把命令里的root改为你的用户名,你就可以改你自己的密码了。
当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin,
那么这种方法就是无效的。
而且mysqladmin无法把密码清空。

下面的方法都在mysql提示符下使用,且必须有mysql的root权限:
方法三
mysql> INSERT INTO mysql.user (Host,User,Password)
VALUES(%,jeffrey,PASSWORD(iscuit));
mysql> FLUSH PRIVILEGES
确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。
在《mysql中文参考手册》里有这个例子,所以我也就写出来了。
注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。

方法四
和方法三一样,只是使用了REPLACE语句
mysql> REPLACE INTO mysql.user (Host,User,Password)
VALUES(%,jeffrey,PASSWORD(iscuit));
mysql> FLUSH PRIVILEGES

方法五
使用SET PASSWORD语句,
mysql> SET PASSWORD FOR jeffrey@"%" = PASSWORD(iscuit);
你也必须使用PASSWORD()函数,
但是不需要使用FLUSH PRIVILEGES。

方法六
使用GRANT ... IDENTIFIED BY语句
mysql> GRANT USAGE ON *.* TO jeffrey@"%" IDENTIFIED BY iscuit;
这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES。
注意: PASSWORD() [不是]以在Unix口令加密的同样方法施行口令加密。

热点内容
什么可以配置波尔多叶 发布:2024-05-05 20:00:32 浏览:962
cgxrar解压密码 发布:2024-05-05 19:47:24 浏览:632
ubuntu编译linux内核 发布:2024-05-05 19:46:05 浏览:7
php静态方法调用对象 发布:2024-05-05 19:24:30 浏览:366
电脑LNS服务器地址 发布:2024-05-05 19:22:15 浏览:376
不属于编译程序组成的部分是什么 发布:2024-05-05 19:05:34 浏览:613
压缩面食 发布:2024-05-05 18:55:45 浏览:804
linux的gz解压命令 发布:2024-05-05 18:24:13 浏览:311
服务器机柜属于什么辐射 发布:2024-05-05 18:02:10 浏览:336
存储成本计算 发布:2024-05-05 18:02:10 浏览:584