精华内容
下载资源
问答
  • linux数据库创建与数据导入

    千次阅读 2012-07-25 17:30:10
    之前没搞过linux,这次客户的系统装的linux,项目发布环境及数据库已经安装好了。由于要急着上线,所以就边摸索边处理了。简单记下,以备后查。 先看版本: 用户给的不是root账号,所以,有些目录访问不了,有些...

    之前没搞过linux,这次客户的系统装的linux,项目发布环境及数据库已经安装好了。由于要急着上线,所以就边摸索边处理了。简单记下,以备后查。

    先看版本:

    用户给的不是root账号,所以,有些目录访问不了,有些文件也操作不了。先前遇到很多问题,不过也都解决了。

    首先把oracle给启动。

    由于不是root用户,所以切换到oracle时总是提示密码,输了几次不对,没办法。后来想到用sudo来试试。果然,可以。


    然后就是启动oracle及查看状态了。

    -- 查看监听的方法
    lsnrctl stat 
    -- 启动监听
    lsnrctl start

    进入sqlplus,切换至sysdba

    sqlplus /nolog
    conn /as sysdba

    创建相关的用户及表空间。

    create tablespace ABCDEFG logging datafile '/u01/oradata/adb/ABCDEFG_oracle.dbf' size 1024m autoextend on next 50m maxsize 2048m extent management local; 
    
    create user ABCDEFG identified by ABCDEFG default tablespace ABCDEFG; 
    
    grant connect,resource, dba to ABCDEFG;

    创建好后将从其他机器导出的PDM上传至本机中。

    之前直接将文件传到/home的该用户下,导致oracle用户无法访问,于是在/tmp/下建了个更新文件夹,PDM上传至该处。可以正常访问。

    由于用了oracle的数据泵,所以先要建立文件目录。

    create directory dump_dir as '/tmp/dbfile'

    查看是否建立好

    select * from dba_directories;

    处理好后。现在可以导入相关数据了。先退出sqlplus。至oracle用户下。

    导入语句

    impdp ABCDEFG/ABCDEFG@localhost/adb DIRECTORY=dump_dir DUMPFILE=ABCDEFG2012_20120725_1146.DMP remap_schema=ABCDEFG2012:ABCDEFG remap_tablespace=ABCDEFG2012:ABCDEFG

    这里需要注意下,先前没有使用 remap_schema 与 remap_tablespace 这两个参数,始终无法导入成功。由于是不同的表空间,所以,加上这两个参数后问题解决。可以正常数据导入了。
    数据导入后用客户端查看了下,相关数据均正常显示。现在更改项目数据库连接参数了。切换至普通用户,进入项目目录下,找到 jdbc.properties,使用vi进行编辑。

    vi之前也没用过,边找资料边操作。总共用了3个命令,那就是进入先按 i 进入插入模式,编辑完成后按 esc 然后 :x,保存并退出。如果不想保存的话可以 :q! 这个命令强制退出。


    这样就差不多可以了。重启项目服务

    service resin restart

    第一次操作Linux,绕了不少弯子,也出现了不少问题,不过好在都给解决了。稍微总结下:

    chown myuser /var/www/webapps  //这个命令可以更改所有者,更改后对相关文件就可以有操作权限了。

    chmod 777 /var/www/webapps //这个命令可以更改用户操作权限。777就是最大权限咯。

    还有个最后才发现了,直接用 su - root可以切换到root用户下。原来客户给我的这个用户的权限是相当大的。

    展开全文
  • Linux上更改mysql数据库目录

    千次阅读 2015-12-23 15:42:58
    Linux上更改mysql数据库目录,是一个辛酸历程

    Linux上更改mysql数据库目录,是一个辛酸历程,其实我想交代更多的内容,只是限于文章的实用性,我决定去繁就简。

    今天早上,客户告诉我期货交易平台登陆不上去,这肯定是项目出了bug。

    一、show processlist

    show processlist;

    这里写图片描述

    发现部分sql等待表级锁(且这么叫吧,懒得找翻译软件了),我首先想到的是“某几张表是myisam引擎,容易发生表级锁,之前就有类似的问题发生,先kill掉sql进程,然后将表引擎由myisam改为innodb。”

    当然了,我按照这个想法准备要执行表引擎的更换了,但出现了突发状况。

    二、got error 28 from storage engine

    如题所示,当我准备打开表查看数据的时候,出现了“got error 28 from storage engine”错误消息提示,我的翻译是“存储引擎出现了28错误”。

    当然我百度了,找到这样一篇mysql的“Got error 28 from storage engine”错误,说实话,这篇文章没有给我什么鸟的帮助,但现在回想起来,确实是我自己大意了,虽然说清空“/tmp”目录的做法不值得推荐,但至少应该去清空一些磁盘,把数据库备份一下

    当然了,我想到去备份数据,使用了“mysqldump”命令尝试了一次数据备份,但是遗憾的是,报了一个错误,提示我无法保存。这是显而易见的,因为磁盘本身就不足了,没有清空磁盘,搞毛线的备份。但这是事后诸葛亮的想法,当时的我显然没有针对性的对数据进行备份!再次奉劝各位,数据库出问题时,即使有自动化的数据备份,但尽量在修正问题之前再做一次实时的备份!

    三、df -h

    没有备份成功,我就转向了另外一个方向,查看数据磁盘空间。

    [root@iZ23gsv94suZ run]# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/xvda1       20G  19G   16M  100% /
    tmpfs           1.9G     0  1.9G   0% /dev/shm
    /dev/xvdb1       99G  255M   99G  1% /mnt

    看到use等于“100%”,我已经确定问题出在哪里了,但是我在这里继续犯了一个错误。

    “莫非是阿里云的磁盘没有挂载成功,就是/dev/xvdb1对应的这个100G磁盘没有挂载成功,否则怎么把20G的这个盘给沾满了呢?”

    后知后觉的我现在恍然大悟,对于windows操作系统,C盘满了,怎么也不会把数据移动到D盘来,然而当时我怎么都在怀疑阿里云的磁盘没有挂载成功!这就是一个天大的错误!

    四、阿里云磁盘挂载

    由于上面这一步认为阿里云磁盘没有挂载成功,所以当时糊涂的我一心要重新挂载磁盘,于是我又在Linux 系统挂载数据盘这个泥潭里深陷不已,久久不能自拔,由于硬盘确实已经挂在成功,所以我再怎么费尽心思也只能得到“磁盘已挂载成功”的答案。但是,这里还是不得不说,一个人的精力实在有限,我几乎已经是一个全栈工程师,自己对自己在意的标签是“打杂工,偏java”,这就让我不得不感慨万千。

    由于是个创业团队,我又是一个负责人,所以我要做的工作有:

    1. java编程
    2. web编程
    3. Linux编程(shell脚本、项目部署)
    4. C#客户端协调(调查bug、业务探讨、相关代码审核)
    5. 安卓编程(目前处于学习阶段)
    6. 项目管理(麻雀虽小肝胆俱全,我必须要让每个人开心快乐的工作,效率最大化)
    7. 财务、行政(发发工资、请大家聚餐活动、游玩、工作环境布置、浇花、打扫卫生)
    8. 需求分析(客户沟通、需求调查、业务建模)
    9. 个人能力提升(编程能力、为人处事能力)

    等等等等,只要能想得到的,没有不做的,实在是无法集中重心专业负责哪一块,就导致哪一块都不精通,这也是导致本次问题出现一个关键因素。

    所以,如果朋友们有好的解决方案,请不吝赐教,我希望通过互联网认识更多朋友,在未来的创业道路上一路前行,互惠互利

    五、mysql数据库目录更改

    既然阿里云的磁盘已经挂在,那么接下来的工作就是把mysql的默认数据目录迁移到100G的盘上,而不是系统盘!

    这个过程现在说起来很简单,但是在执行的过程中,却是千辛万苦!

    linux 更改mysql的数据库目录,这篇文章提供了相应的办法,按理说,按照里面提到的方法执行下去就OK,但这里,我不得不强调,项目千差万别,每个人解决问题的办法也不尽相同,所以,动数据库之前,千万要先备份!

    显然,我按照这篇文章所说,是没有把目录迁移成功,所以你也需要这样,请千万注意!

    ①、mv

    Linux的mv命令很强大,但风险系数也很高!
    强烈建议使用cp命令,而非mv命令,除非你一万个确定方案可行。

    ②、chown -R mysql:mysql /home/data/mysql/

    chown -R mysql:mysql /home/data/mysql/  # 改变数据库的归属为mysql

    这个语句慎用,反正坑哭了我!

    ③、 /mnt

    前面曾提到
    /dev/xvdb1 99G 255M 99G 1% /mnt
    不知道,你是否注意,对于我一个Linux的雏鸟来说,显然没有意识到这个100G的磁盘,其路径是“/mnt”,也就是说,mysql的数据目录需要重置到该“/mnt”目录下

    ④、目录迁移

    1、cp -afpr /var/lib/mysql/ /mnt/

    使用cp命令,将mysql的数据默认目录,移动到新的挂载盘/mnt下面

    [root@iZ23gsv94suZ mysql]# pwd
    /mnt/mysql
    [root@iZ23gsv94suZ mysql]# ls
    auto.cnf  ib_logfile0  ibtmp1            iZ23gsv94suZ.pid  mysql-bin.000001  mysql.sock          RPM_UPGRADE_HISTORY      
    ibdata1   ib_logfile1  iZ23gsv94suZ.err  mysql             mysql-bin.index   performance_schema  RPM_UPGRADE_MARKER-LAST
    2、vim /etc/my.cnf
        [mysql]
        default-character-set=utf8
        socket          = /mnt/mysql/mysql.sock
        #
        [mysqld]
        # The TCP/IP Port the MySQL Server will listen on
        port=3306
        socket          = /mnt/mysql/mysql.sock

    把mysql配置文件的socket目录更改到/mnt下对应的路径

    3、vim /etc/init.d/mysql
      then
       # datadir=/var/lib/mysql
    datadir=/mnt/mysql

    将该文件中的datadir修改为对应的/mnt目录

    4、ln -s /mnt/mysql/mysql.sock /var/lib/mysql/mysql.sock

    使用ln命令,指定一条链接给mysql.sock,具体的作用,我不知,你可百度。

    按照以上四步,就可以转移mysql的数据库目录了,但是,我的过程远比这个艰辛。

    搞来搞去,我的mysql是搞崩溃了,没有办法,需要重新安装。这里,你可以参照centOS下安装mysql5.7升级mysql到5.7。然后,数据恢复你可以使用source命令,如果涉及到二进制日志恢复,你可以参照mysql之备份和导入数据(包括二进制日志)

    但最重要的是,操作数据库之前,想尽一切办法先备份数据库!


    相关文章

    笑对现实的无奈,不能后退的时候,不再傍徨的时候,永远向前 路一直都在──陈奕迅《路一直都在》
    本文出自:【沉默王二的博客

    展开全文
  • 二、Linux下MySQL数据库数据迁移

    千次阅读 2017-07-25 14:04:54
    1 迁移前准备 1.1 停止MySQL数据库服务 执行命令:service mysqld stop   1.2 创建数据库迁移目录 执行命令:mkdir /home...执行命令:ln -s /home/mysql/data /usr/local/mysql/var 在安装目录下创建mysql数据存放目
    1 迁移前准备

    1.1 停止MySQL数据库服务

    执行命令:service mysqld stop


    1.2 创建数据库迁移目录

    执行命令:mkdir /home/mysql


    执行命令:mkdir /home/mysql/data


    执行命令:ln -s /home/mysql/data /usr/local/mysql/var 在安装目录下创建mysql数据存放目录的软链接(快捷方式)var。


    执行命令:cd /usr/local/mysql进入mysql安装目录,执行命令查看目录下的文件信息。


    看到图中倒数第二行的信息表示软链接创建成功。


    2 数据迁移
    2.1 复制数据库数据到迁移目录

    执行命令:cp -r ./data/* /home/mysql/data 将mysql安装目录下的data下的数据全部复制到迁移目录中。


    2.2 修改配置并启动服务

    执行命令:cd /etc/init.d进入mysql初始化目录


    执行命令:vi mysqld 打开mysqld配置文件


    按键盘上的i键 进入编辑模式


    将光标移到datadir的配置位置,将datadir=/usr/local/mysql/data改为datadir=/usr/local/mysql/var即数据库迁移目录。


    修改好之后按esc键,然后输入:wq保存并退出编辑,注意:也是要输入的。


    执行命令:chown -R mysql:mysql /usr/local/mysql/var
    执行命令:chown -R mysql:mysql /home/mysql/data
    执行命令:service mysqld start启动数据库



    到此数据迁移成功

    展开全文
  • Linux下更新Mysql数据库数据

    千次阅读 2018-10-23 15:02:33
    进入数据库mysql -uroot -p输入...3.导出一个数据库的结构以及数据 mysqldump dbname -uroot -p> dbname.sql   使用XSHELL来操作服务非常方便,传文件也比较方便。 yum install lrzsz 打开文件夹弹窗 ...

    进入数据库mysql -uroot -p输入root密码进去即可查看。

    1,显示数据库

    show databases;

    2.退出

    exit;

     

    3.导出一个数据库的结构以及数据

    mysqldump dbname -uroot -p> dbname.sql

     

    使用XSHELL来操作服务非常方便,传文件也比较方便。

    yum install lrzsz

    打开文件夹弹窗

    rz 

    会将文件下载到本地的窗户

    sz 文件名

     

    进入MySQL命令。

    mysql -uroot -p

    输入root密码

    1,显示数据库

    show databases;

    2.use a(要不会报错“No Database Selected”)

    home /home/a.sql(sql所在文件夹名)

    quit

     

    展开全文
  • Linux下MySQL数据库目录更改转移

    千次阅读 2019-06-24 17:49:57
    场景,ibdata1文件增长过快,或者数据库数据量增长过快导致datadir 目录快满的情况下,将datadir 目录下数据迁移到其他目录。 备份数据库 备份数据库很重要,防止迁移数据库失败恢复数据库。 [root@www.cndba.cn/...
  • 1.利用XShell或SSH工具连接到远程数据库,注意要以 Oracle 用户登录 2.在XShell或SSH命令行中链接SQL,命令如下:sqlplus /nolog 3.连接到SQL后如下命令可创建或查询虚拟路径,为dump文件存放做准备 查看...
  • Linux 导出数据库数据

    千次阅读 2018-06-07 15:03:13
    首先linux 下查看mysql相关目录whereis mysqlmysql: /usr/bin/mysql---- mysql的运行路径 /etc/mysql /usr/lib/mysql----- mysql的安装路径/usr/bin/X11/mysql /usr/share/mysql/usr/share/man/man1/mysql.1.gz...
  • Linux环境下mysql数据库数据导入导出

    千次阅读 2017-11-01 19:54:31
    登陆 show数据库 选择数据库 导出到指定位置 导出成功 导入 创建数据库 选择数据库导入 导入成功
  • LINUX下,数据库DATA文件,从一服务器转移到另一服务器,可能出现看不到数据表问题。 解决方法: 查看原生mysql数据库权限 把项目目录和mysql目录权限更改成原生mysql数据库权限或更高等级的权限
  • linux 数据库文件迁移步骤详解

    千次阅读 2017-08-09 15:46:28
    数据库迁移
  • 当我进入服务器的数据库时,原来的数据库数据都不见了,只留下了一个名为WARNING的数据库和一条数据,阅读之后,我明白了缘由,黑客!信息中说的很清楚,需要向黑客支付一定数量的比特币来找回数据,先不说钱的...
  • linux数据库mysql数据存储位置

    千次阅读 2019-10-26 10:18:03
    既可看到位置参数(数据存储位置参数为datadir) 在学习视频里面是有datadir参数的,但我在我的服务器上看不到,抓耳挠腮-_- mysql提供两种引擎:InnoDB和MyISAM InnoDB:采用事务优先,行级锁,适用于高并发 ...
  • 1.登录mysql mysql -u root -p 2.如果出现以下情况,则取出来的中文就会乱码或者变成问号 show variables like '%char%'; 3.service mysql stop关闭mysql,vim /etc/my.cnf,在mysqld下添加如下一行代码 ...
  • Linux数据库定时备份及上传至阿里云oss 备份数据库脚本 #当前时间 dd=`date +%Y-%m-%d-%H-%M-%S` echo "执行sql文件备份!备份时间: $dd" #执行备份命令 -u 数据库名 -p 数据库密码 -h 主机地址 -P mysql端口 -E后...
  • 本地mysql数据库导入到linux数据库

    千次阅读 2017-01-06 11:29:10
    连接上数据库。 2 在连接终端上执行命令create database JD_Model 数据库名; 执行完成后,验证数据库是否创建成功。执行命令show database;查看是否有JD_Model数据库
  • linux数据库的备份与还原

    千次阅读 2019-05-14 21:55:42
    对于绝大多数企业来讲,失去数据就相当于失去商机、失去产品、失去客户,甚至会造成公司倒闭,同时我们的数据丢失会导致很多的不便,数据库的备份会大大的提高数据的安全性和可用性。 一、MySQL数据库备份 如图所示...
  • 导入sql文件需要先将sql上传至服务器,故连接上xshell后,cd进入到根目录,再cd进入www(目录随意,只要记得自己的sql文件是导入到哪个文件夹就可以了) 执行 rz 选择本地数据库文件(rz 是安装的上传工具包,...
  • linux mysql 更改MySQL数据库目录位置

    千次阅读 2016-12-26 22:15:03
    MySQL默认的数据文件存储目录为/var/lib/mysql。假如要把目录移到/home/data下需要进行下面几步:  1、home目录下建立data目录  cd /home  mkdir data  2、把MySQL服务进程停掉:  mysqladmin -u root -p ...
  • linux数据库初始化配置

    千次阅读 2017-01-11 09:55:38
    mysql: 第一次登陆mysql -uroot -p...   选择数据库下载:use mysql;   UPDATE user SET password=PASSWORD('Java0713!') WHERE user='root';   update user set host = "%" where host = "localhost.localdo
  • rpm安装默认目录数据文件:/var/lib/mysql/ 配置文件模板:/usr/share/mysql mysql客户端工具目录:/usr/bin 日志目录:/var/log/ pid,sock文件目录:/tmp/ 一般配置文件会放置在/etc下
  • 1、导出完整数据:表结构+数据 使用mysqldump命令来导出数据库,语法格式如下: mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql mysqldump -h localhost -uroot -p123456 database > dump.sql 注意...
  • linux数据库

    千次阅读 2019-02-21 11:35:30
    数据库就是一种按数据结构来组织,存储和管理数据的仓库,其中包含数据挖掘,大数据信息的推送 2.数据库的种类 sqlserver-----微软公司 mysql---------sun公司 oracle--------oracle db2------------idm 3....
  • linux数据库导入与导出

    万次阅读 2017-09-01 11:17:07
    一、导出数据库用mysqldump命令1、导出数据和表结构: mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql#/usr/local/mysql/bin/ mysqldump -uroot -p abc > abc.sql 敲回车后会提示输入密码!此处有坑,...
  • Linux下访问数据库

    万次阅读 2019-08-02 22:40:33
    Linux下访问数据库 声明:本文只简单描述Linux系统下访问mysql数据库的步骤,关于连接上数据库之后的简单的对于数据库的增删改查等操作只是稍微提及,关于增删改查的语句书写,本文不再讲述。 一般来说,访问...
  • 一 导出 ... exp导出工具将数据库数据备份压缩成一个二进制系统文件,可以在不同OS间迁移。  exp导出工具又分为交互式命令行方式和非交互式命令行方式 .  (1)交互式命令行方式  exp use
  • linux下导出导入远程数据库中的数据

    千次阅读 2018-11-03 14:32:31
    1.在linux终端输入以下命令进行数据库的导出:  ls : 查询所在文件夹中的文件 mysqldump -h 所要连接的数据库的IP地址(如果是本机的话就是:127.0.0.1) -u用户名 -p用户密码 在连接的数据库中所要导出的数据库...
  • linux服务器下的oracle数据库数据导出和导入 第一步登录oracle系统用户 切换到oracle su - oracle 登录oracle的系统用户 sqlplus / as sysdba 创建逻辑目录,该命令不会在操作系统创建真正的目录,只是在数据中...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 519,903
精华内容 207,961
关键字:

linux数据库数据目录

linux 订阅