linux下修改Mysql、Oracle以及mongoDB数据库密码

一、mysql

(1)、知道原来的myql数据库的root密码;

①: 在终端命令行输入 mysqladmin -u root -p password "新密码" 回车 ,Enter password: 【输入原来的旧密码】
②: 登录mysql系统修改, mysql -uroot -p 回车 Enter password: 【输入原来的密码】

mysql>use mysql;

mysql> update user set password=password("新密码") where user='root';        【密码注意大小写】

mysql> flush privileges;

mysql> exit;      

然后使用刚才输入的新密码即可登录。

(2)、不知道原来的myql的root的密码;
首先,你必须要有操作系统的root权限了。要是连系统的root权限都没有的话,先考虑root系统再走下面的步骤。 类似于安全模式登录系统。

需要先停止mysql服务,这里分两种情况,一种可以用service mysqld stop,

另外一种是/etc/init.d/mysqld stop

当提示mysql已停止后进行下一步操作   Shutting down MySQL. SUCCESS!

在终端命令行输入

mysqld_safe --skip-grant-tables &         【登录mysql系统】

输入mysql登录mysql系统

mysql> use mysql;

mysql> UPDATE user SET password=password("新密码") WHERE user='root';      【密码注意大小写】

mysql> flush privileges;

mysql> exit;

重新启动mysql服务

这样新的root密码就设置成功了。

 

(3)、修改root登录权限

当你修改好root密码后,很有可能出现这种情况

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

这是因为root登录权限不足,具体修改方法如下

需要先停止mysql服务,这里分两种情况,一种可以用service mysqld stop,

另外一种是/etc/init.d/mysqld stop

当提示mysql已停止后进行下一步操作   Shutting down MySQL. SUCCESS!

在终端命令行输入

mysqld_safe --skip-grant-tables &         【登录mysql系统】

输入mysql登录mysql系统

mysql>use mysql;

mysql>update user set host = '%' where user = 'root';

mysql>select host, user from user;

mysql> flush privileges;

mysql> exit;

然后重新启动mysql服务就可以了。 

二、Oracle

以oracle用户登录linux操作系统
执行命令:su - oracle
以dba身份登录oracle数据库
执行命令:sqlplus / as sysdba

执行以下命令修改用户密码
SQL中执行:alter user sys identified by change_on_install;

三、MongoDB

 

(1)、启动mongo 

找到配置文件bin,命令行运行命令:./bin/mongo

(2)、查看当前已存在的数据库

show dbs

(3)、切换到你想要运行添加用户名、密码的数据库

use XXX (XXX为你想要操作的数据库的名字)

(4)、为当前的数据库添加用户

db.createUser({user:’username’,pwd:’password’,roles:[{role:”readWrite”,db:”XXX”}]})

注意:readWrite为你想让用户拥有的权限,可根据不同的需求给用户设置不同的权限。

(5)、修改配置文件

打开mongoldb.config文件,在文件中添加代码auth = true,保存退出

(6)、重启mongoDB

首先结束进程:pkill mongod

通过配置文件启动mongoDB:./bin/mongod -f  mongodb.conf

注意:重启之后再通过mongo操作数据库时需要先用用户登录,use XXX,然后运行db.auth(‘username’,’password’),如果打印出1说明登录成功。

一、无用户认证Mongo复制集群搭建

  1.下载Mongo安装包并解压:mongodb-linux-x86_64-rhel62-3.4.1.tgz

  2.配置环境变量

      ~/.bash_profile添加配置:PATH=$PATH:$HOME/bin:/data/mongodb-install/bin(mongo install path可修改)

      执行cmd:source ~/.bash_profile

  3.Mongo实例启动配置文件mongod.conf

       #配置中的名字和路径均可更改

      replication:
          replSetName: "mongodb-test"
      systemLog:
          destination: file
          path: "/data/prod_mongodb/mongod.log"
          logAppend: true
     storage:
         dbPath: "/data/prod_mongodb/storage"
         journal:
             enabled: true
     net:
         port: 52348
     processManagement:
         fork: true

  上述配置是非arbiter节点配置,如果该节点是arbiter的话,只需将storage.journal.enabled配置改成false

  4.准备三台linux机器,然后启动Mongo实例

     启动命令:  mongod --config /data/prod_mongodb/mongod.conf

  5.初始化Mongo Replica Set

      step1:mongo --port 52348

      step2:rs_config={_id:"mring-mongodb-test", members:[{_id:0, host:"192.168.222.XXX:52348"},{_id:1, host:"192.168.222.XXX:52348"},{_id:2,host:"192.168.222.XXX:52348",arbiterOnly:true}]}

      step3:rs.initiate(rs_config)

      step4:rs.status()

      step5:show dbs

          admin 0.000GB
          local 0.000GB

  6.登录Primary节点操作

     mongo --port 52348

二、有用户认证Mongo复制集群搭建

  1.生成安全认证key

     openssl rand -base64 756 > <path-to-keyfile>

     chmod 400 <path-to-keyfile>

  2.配置文件mongod.conf

      参看无认证的配置文件,仅需添加下面的配置

        security:
           keyFile: "<path-to-keyfile>"

  3.其他步骤,参看上面无认证搭建步骤即可

  4.创建不同权限用户(需要登录primary)

    step1:mongo --port 52348

    step2:use admin

    step3:db.createUser({user:"superman",pwd: "superman",roles: [ "clusterAdmin","userAdminAnyDatabase","dbAdminAnyDatabase","readWriteAnyDatabase"]})  (创建超级管理员 )

    step4:db.createUser({user: "mongo-read",pwd: "mongo-read",roles: [{role: "read", db: "mongo_core"},{role: "read", db: "mongo_env"}]})  (创建普通只读权限用户需先创建数据库use mongo_core)

    step5:db.createUser({user: "mongo-write",pwd: "mongo-write",roles: [{role: "readWrite", db: "mongo_core"},{role: "readWrite", db: "mongo_env"}]})  (创建普通只读权限用户创建数据库use mongo_env)

三、导入导出数据

  1.无认证导出

      mongodump --port 52348 --db mongo_core --out /data/db/

  2.有认证导出

      mongodump --port 52348 -u mongo-write -p mongo-write --authenticationDatabase "test" --db mongo_wtest --out /data/db/

  3.无认证导入

      mongorestore --host mongo-mongodb-test/192.168.222.XXX:52348,192.168.222.XXX:52348,192.168.222.XXX:52348 --db mongo_core --dir /data/db/mongo_core

      mongorestore --host 192.168.222.XXX:27017 --db itestbak --dir /opt/mring/app/mongobak20180425120001/mongo_itest/

  4.有认证导入

      mongorestore --host mongo-mongodb-test/192.168.222.XXX:52348,192.168.222.XXX:52348,192.168.222.XXX:52348 -u superman -p superman --authenticationDatabase "admin" --db mongo_wtest --dir /data/db/mongo_wtest

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值