技术支持 云市场镜像产品 数据库运行环境 Mariadb 镜像使用指南

Mariadb 镜像使用指南

Mariadb 的用户名/密码保存在系统目录下:

cat /alidata/account.log   

关于如何修改 Mariadbp 的密码,可以参考如下:

修改Mariadb密码

mysqladmin -uroot -p老密码 password 新密码 注意:老密码即您mariadb的root用户当前的密码,新密码即您修改后的密码。 -p跟老密码之间没有空格。老密码跟“password”之间有空格,password跟新密码之间有空格。

软件的主目录:/alidata mariadb主目录:/alidata/server/mariadb mariadb配置文件:/etc/my.cnf 日志目录: /alidata/log/mariadb 为mariadb存放日志主目录。 init目录: /alidata/init 为当用户用镜像创建系统后,当且仅当用户在第一次启动系统的时候,调用此目录下的脚本来初始化mariadb的密码(随机密码)。

mariadb:

/etc/init.d/mysqld start/stop/restart/

教程一:将 Mariadb 迁移至数据盘中

镜像部署的 Mariadb 的安装目录及数据目录都存放在系统盘中,同样考虑到系统盘空间不够用的情况,后面如果我们部署的 Mariadb 数据量很大,这里就需要我们将我们的 Mariadb 迁移至数据盘中。

Mariadb 迁移至数据盘中,一般指将 Mariadb 的数据目录迁移至数据盘中。 具体操作步骤可以参考如下:

1、首先格式化磁盘,并将数据盘挂载在 mnt 目录下(根据您自己的需求,也可以挂载在其他目录下)

 mkdir -p /mnt/data

2、用 mysqldump 命令导出您项目所有的数据,命令参考如下:

 mysqldump -p --all-databases > all.sql

3、停止 Mariadb :

 /etc/init.d/mysqld stop

4、vim /etc/init.d/mysqld 将文件中 “datadir=/alidata/server/mariadb/data” 中的目录地址更改为您迁移至数据盘中的目录地址,即 “datadir=/mnt/data” 。

5、然后用以下命令初始化一个全新的数据库环境:

/alidata/server/mariadb/scripts/mysql_install_db --basedir=/alidata/server/mariadb --datadir=/mnt/data  --user=mysq

值得注意的是 datadir 为您 Mysql 的数据目录。

6、启动 mysql ,然后将数据还原至新的数据盘中:

/etc/init.d/mysqld start
mysql <  all.sql
/etc/init.d/mysqld restart

教程二:如何配置 Mariadb 远程连接

很多用户反馈,用镜像生成系统后,云主机本地能够连接 Mariadb ,为何远程连接不上 Mariadb 呢?

这是因为默认安装的 Mariadb ,出于安全考虑,只能本地连接。

如果您需要远程连接,这里就需要设置一下 Mariadb 的权限表。

具体设置的步骤如下:

1、在您的云主机上连接进入 Mariadb 。

2、执行以下 Mariadb 命令:

 use mysql                #打开 mysql 数据库

将 host 设置为 % 表示任何 ip 都能连接 Mariadb ,当然您也可以将 Host 指定为某个 ip

 update user set host='%' where user='root' and host='localhost';
 flush privileges;             #刷新权限表,使配置生效

然后我们就能远程连接我们的mariadb了。

3、如果您想关闭远程连接,恢复 Mariadb 的默认设置(只能本地连接),您可以通过以下步骤操作:

 use mysql                                              #打开mysql数据库
 update user set host='localhost' where user='root';             #将host设置为localhost表示只能本地连接mariadb
 flush privileges;                                      #刷新权限表,使配置生效

备注:您也可以添加一个用户名为 yuancheng ,密码为123456,权限为%(表示任意 ip 都能连接)的远程连接用户。命令参考如下:

 grant all on *.* to 'yuancheng'@'%' identified by '123456';
 flush privileges;