• 关于

    sql执行shell

    的搜索结果

问题

如何从Shell脚本执行MySQL命令??mysql

如何通过外壳程序脚本执行SQL命令,以使其自动化? 我想使用外壳程序脚本恢复在SQL文件中收集的数据。我想连接到服务器并还原数据。通过SSH命令行单独执行时,该命令有效。 这是我使用的命令&#x...
保持可爱mmm 2020-05-17 17:01:32 1 浏览量 回答数 1

回答

用 shell 将一千万行文件切分成 100 个文件,这样每个文件有10万行,具体做法可以 man split。写 php 脚本,脚本内容是读一个文件,然后输出有效的数据。注意数据格式,严格按照表中字段的顺序来写,字段之间用半角分号隔开,行之间用 n 隔开。具体参数可配置,参见 MySQL 的 load data 命令参数。注意是 php cli 方式运行的,不要拿 Apache 或者 其他 web server 下面跑这个东西。如果按行读不知道怎么搞可以直接用 php 的 file() 函数,生成的 sql 语句通过 error_log($sql, 3, "/path/to/dataa") 函数写入到文件中。同时可以 echo 一些调试信息,以备后续检查。写 shell 脚本调用 php 处理日志.脚本可以类似来写/path/to/php/bin/php -f genMySQLdata.php source=loga out=dataa > /errora.log & /path/to/php/bin/php -f genMySQLdata.php source=logb out=datab > /errorb.log & /path/to/php/bin/php -f genMySQLdata.php source=logc out=datac > /errorc.log & ....重复一百行,机器配置低可以分批写,每个写 10 行也行。这个脚本内容很有规律吧,本身也可以用 php 来生成。时间又省了。 在机器上执行这个 shell 脚本,实际上就启动多个 PHP 进程来生成数据。配置够牛的话,就等于你启动了 100 个 PHP 进程来处理数据。速度又快了。继续写 shell 脚本,内容是打开 MySQL 用 load data 来载入数据。mysql -h127.0.0.1 -uUser -ppwd -P3306 -D dbname -e 'load data infile "/path/to/dataa" into table TableName(Field1, Field1, Field1);' 其中的 field1 ... 要跟生成数据的顺序对应,这个命令可以直接执行,也可以放到 shell 里面重复写 N 行,然后执行 shell 脚本。
a123456678 2019-12-02 02:53:14 0 浏览量 回答数 0

回答

不可以的,Shell节点支持标准Shell语法,不支持交互性语法。如果任务较多,可以使用ODPS SQL节点来完成任务的执行。关于DataStudio的其他介绍请参考官方文档: https://help.aliyun.com/document_detail/74423.html 如有更多疑问咨询可以加入MaxCompute开发者社区钉群点击链接
montos 2020-05-27 16:26:36 0 浏览量 回答数 0

问题

hive执行报错 cdh5.1.2中??报错

在cdh5.1.2中执行hive, 执行诸如select id,name from test的语句 只有使用hdfs用户能正常执行,使用其他用户不可以 另外,使用hive jdbc...
爱吃鱼的程序员 2020-06-14 21:32:49 0 浏览量 回答数 1

回答

1.mysqldump 在日常工作中,我们会使用mysqldump命令创建sql格式的转储文件来备份数据库。或者我们把数据导出后做数据迁移,主备搭建等操作。mysqldump是一个逻辑备份工具,复制原始的数据库对象定义和表数据产生一组可执行的SQL语句。 默认情况下,生成insert语句,也能生成其它分隔符的输出或XML格式的文件。 shell> mysqldump [arguments] > file_name 我们简单的来看一下日常的用法: 备份所有的数据库: shell> mysqldump --all-databases > dump.sql (不包含INFORMATION_SCHEMA,performance_schema,sys,如果想要导出的话还要结合--skip-lock-tables和--database一起用) 备份指定的数据库: shell> mysqldump --databases db1 db2 db3 > dump.sql 当我们只备份一个数据的时候可以省去 --databases 直接写成:mysqldump test > dump.sql 不过有一些细微的差别,如果不加的话,数据库转储输出不包含创建数据库和use语句,所以可以不加这个参数直接导入到其它名字的数据库里 当然我们也可以只备份某个表 : mysqldump --user [username] --password=[password] [database name] [table name] table_name.sql 了解了简单的一些用法后我们再着重的看一下几个参数: --master-data 获取备份数据的Binlog位置和Binlog文件名,用于通过备份恢复的实例之间建立复制关系时使用,该参数会默认开启。 --dump-slave 用于在slave上dump数据,建立新的slave。因为我们在使用mysqldump时会锁表,所以大多数情况下,我们的导出操作一般会在只读备库上做,为了获取主库的Relay_Master_Log_File和Exec_Master_Log_Pos,需要用到这个参数,不过这个参数只有在5.7以后的才会有 –no-data, -d 不导出任何数据,只导出数据库表结构 刚刚我们说过在使用mysqldump的时候会锁表,我们来详细的看一下它的锁机制。 我们开两个窗口,在第一个里面执行mysqldump -uroot -pxxxxx --master-data=2 --databases dbname > /tmp/dbnamedate +%F.sql 然后第二个窗口登陆进去,使用show process的命令可以看到目前dump的session正在执行 1.png SELECT /*!40001 SQL_NO_CACHE */ * FROM table_name; 可以看到这条sql正在以no_cache的模式查询数据。 然后我们在同样的表上执行一下select,发现被阻塞了。光标一直不返回。 2.png 一般遇到这种文件,我们会想是不是有锁呢? 为了验证我们查看一下锁的信息,可以发现dump的进程实际上是加了锁的。 3.png 我们把具体的general_log打开,然后看一下当时的操作: 4.png 4101044 Query FLUSH /*!40101 LOCAL */ TABLES 4101044 Query FLUSH TABLES WITH READ LOCK (关闭所有打开的表,同时对于所有数据库中的表都加一个读锁,直到显示地执行unlock tables,该操作常常用于数据备份的时候。) 4101044 Query SHOW MASTER STATUS(这是因为我用了--master-data=2) 所以这个时候表就会被锁住。 如果我不加--master-data参数(mysqldump -uroot -pxx --databases db > /tmp/dbnamedate +%F.sql) mysql会显示的对每一张要备份的表执行 LOCK TABLES table_name1 READ,LOCK TABLES table_name2 READ 并且也不会有读的阻塞。 那有没有不锁的方法,其实也是有的,就是使用--single-transaction把备份的操作放在一个事务里去进行 带上--single-transaction参数的mysqldump备份过程: 如果是5.6版本的mysql 答案来源网络,供参考,希望对您有帮助
问问小秘 2019-12-02 03:02:16 0 浏览量 回答数 0

问题

MySQL-Proxy实现读写分离

MySQL-Proxy是处在MySQL数据库客户和服务端之间的程序,它还支持嵌入性脚本语言Lua。这个代理可以用来分析、监控和变换(transform)通信数据,它支持非常广泛的使用场景: •负载平衡和故障转移处理 •查询分析和日志 •SQ...
落地花开啦 2019-12-01 19:49:41 1482 浏览量 回答数 1

回答

HBase shell创建表不需要执行表schema,写入数据时动态指定列名即可。phoenix支持使用sql创建表,创建表需要定义好表结构,底层默认会对列名进行编码,且多出一个默认列。
巴客 2019-12-02 01:45:17 0 浏览量 回答数 0

回答

如果响应时间特别慢需要看一下负载。主要是进程的CPU和内存消耗,看看是什么进程cpu消耗高。通常不会是nginx的问题,一般常见的就是tomcat负载高,或者mysql负载高。分别说一下。如果是tomcat负载高,那么基本上是页面代码设计问题,这个页面设计不合理,导致长时间执行CPU密集型的操作,返回慢。如果是mysql负载高,那么可以在mysql的shell上敲一下show processlist;,看看是什么sql导致的,说明你需要针对这部分sql做优化,以上。
a123456678 2019-12-02 02:13:03 0 浏览量 回答数 0

回答

我感觉到,回答这个问题的每个人都不知道成为一个Web应用程序开发人员是什么样的,它允许人们在自己的服务器上安装该应用程序。尤其是,共享主机不允许您像前面提到的“ LOAD DATA”查询那样使用SQL。大多数共享主机也不允许您使用shell_exec。 现在,要回答OP,您最好的选择就是构建一个PHP文件,该文件将您的查询包含在一个变量中并可以运行它们。如果确定要解析.sql文件,则应研究phpMyAdmin并获得一些想法,以这种方式从.sql文件中获取数据。看看其他具有安装程序的Web应用程序,您会看到,它们没有使用.sql文件进行查询,而是将它们打包到PHP文件中,并通过mysql_query或它们需要执行的任何操作来运行每个字符串。来源:stack overflow
保持可爱mmm 2020-05-11 10:26:35 0 浏览量 回答数 0

回答

您需要使用该-p标志来发送密码。这很棘手,因为您-p和密码之间必须没有空格。 $ mysql -h "server-name" -u "root" "-pXXXXXXXX" "database-name" < "filename.sql" 如果在空格之后-p使mysql客户端以交互方式提示您输入密码,然后将下一个命令参数解释为数据库名称,则使用空格: $ mysql -h "server-name" -u "root" -p "XXXXXXXX" "database-name" < "filename.sql" Enter password: ERROR 1049 (42000): Unknown database 'XXXXXXXX' 实际上,我更喜欢将用户名和密码存储在〜/ .my.cnf中,因此我根本不必将其放在命令行中: [client] user = root password = XXXXXXXX 然后: $ mysql -h "server-name" "database-name" < "filename.sql" 发表您的评论: 我一直在命令行和shell脚本中始终运行上述类似的批处理模式mysql命令。很难诊断Shell脚本出了什么问题,因为您尚未共享确切的脚本或任何错误输出。我建议您在上面编辑您的原始问题,并提供发生问题的示例。 另外,在对shell脚本进行故障排除时,我使用该-x标志,以便查看其如何执行每个命令: $ bash -x myscript.sh来源:stack overflow
保持可爱mmm 2020-05-17 17:08:16 0 浏览量 回答数 0

问题

greenplum tpc-h测试

对于tpch22个查询,我在shell脚本通过for i in `sed 1,22` do psql ...$i.sql...2>error.log & done这种方式跑的查询,把每个查询都放到后台了,请问这些查询是...
jason张 2019-12-01 19:43:13 1852 浏览量 回答数 1

回答

1 连接登入很多人第一次使用某工具时,往往打怵,排斥,感觉很不好用。我们先从连接操作的具体细节的讲起,来减少这种不适。step 1 点击上面工具栏的【Connect】按钮step 2 在弹出的Connections 界面中 点击[Create]按钮。因为是第一次,连接信息要新建。step 3 在弹出的Connection Editor 界面编辑登入信息。主要有三类信息要求输入 1. Basic;2.Authentication;3.Default Database。Basic 编辑界面;这时候大家一定要注意Port端口,因为它默认的是27017,大家要根据实际需求调整修改。还有就是Name是显示名称,可以修改为更有代表性的名称。2.点击【Authentication】,进入Authentication界面。此处需输入 Auth DB 数据(数据库名称),用户数据 和 密码数据3.点击【Default DataBase】,进入Default DataBase界面。请一定要输入指定的数据库,否则可能提示错误,如下。MongoError:Authentication failed或者 可以登入进去,但是看不到任何 集合。但是,随着版本的升级,新版本这个栏位的值在登入时可能会自动获取前面输入Auth DB的 输入值,但是目前来看还不是很稳定。所以,还以建议大家手动输入Default DataBase 数据。2.打开一个新的查询界面在很多工具,都会有一个打开查询界面的按钮。例如连接SQL Server的 SSMS客户端,工具栏很明显就有一个功能按钮【新建查询】单nosqlbooster 工具没有,然人着急,无从下手。其实,它可以通过快捷方式来实现。如下:【注意点击时,请先用鼠标点击选中要指定的集合或数据库】3.查询代码生成器这个工具还有一个查询代码生成器,可以将用户编写的查询语言装换成 MongoDB Shell, JavaScript (Node.js), Java, C# and Python 等各种语言。特别有利于初学者 对MongoDB上手,熟悉各种语法。例如 将以下的工具语言转换为可以执行C# 语句。从这儿我们可以看到很多C# 语言关于MongoDB的操作写法。查询语句生成器刚学习MongoDB,可能对一些查询写法比较陌生,没关系,这个工具可以自动生成一些查询语句。生成器按钮,点击红色标注的[Query]弹出 可视化的查询编辑器,如下:点击【OK and Run】就可以生成MongoDB Shell 查询语句。【一定要在生成了db.collectionname..find({}) 命令的界面上编辑,否则,点击Query无效】5 可以使用SQL(结构化查询语言)查询在前面的2中,我们说过了,点击【Ctrl+Alt+T】可以打开一个 SQL 查询界面。说明nosqlbooster支持SQL查询语言。例如 db.employees.aggregate([ { $group: { _id: "$department", total: { $sum: "$salary" } }, } ])可以转换为SQL语言,如下:mb.runSQLQuery( SELECT department, SUM(salary) AS total FROM employees GROUP BY department );其执行结果是一样的。【另外,为了促使自己尽快的熟悉mongo语言和其更高的执行性能,推荐大家还是使用mongo这种JSON类的语言,而不是SQL的语言】6 将查询出的数据导出到Excel文件中在MongoDB的导出功能中支持JSON和CSV格式,而大家熟悉的Excel一般的工具很难支持,而我们可以通过nosqlbooster工具将少量数据导出到Excel中(所谓的少量数据要求主要受限于本地内存)。下面以导出集合testexportToexcel的数据为例,进行演示说明。step 1 执行查询语句 step 2 将显示格式调整为 Table 格式step 3 按Shift 键,选中所要导出的数据step 4 在选中的数据区域中,鼠标右击,选中【Copy Document(s) to Clipboard -Tab-Separted Values】step 5 粘贴至excel文件中,即可。
景凌凯 2019-12-02 02:05:07 0 浏览量 回答数 0

问题

shell执行sqlplus 无法截获oracle的? ?

#!/bin/bash #连接数据库函数 sqlplus -S $etl_user/$etl_pwd@$etl_tns << EOF set heading off set feedback off set pagesi...
爱吃鱼的程序员 2020-08-21 15:29:23 0 浏览量 回答数 1

回答

您可以使用该exec()功能执行外部命令。 注意:在shell_exec()和之间exec(),我会选择第二个,它不会将输出返回到PHP脚本-不需要PHP脚本以字符串的形式获取整个SQL转储:您只需要将其写入文件中,这可以通过命令本身来完成。 该外部命令将: mysqldump使用正确的参数致电, 并将输出重定向到文件。 例如 : mysqldump --user=... --password=... --host=... DB_NAME > /path/to/output/file.sql 这意味着您的PHP代码将如下所示: exec('mysqldump --user=... --password=... --host=... DB_NAME > /path/to/output/file.sql'); 当然,您可以使用正确的连接信息,用...这些信息代替。来源:stack overflow
保持可爱mmm 2020-05-10 23:11:08 0 浏览量 回答数 0

问题

从python脚本执行psql命令

如何从Python脚本中执行psql命令?我的代码插入、更新来自PostgreSQL DB的数据(使用psycopg2和cursor方法)。当我执行smth时,它工作得很好 cursor.execute("UPDAT...
kun坤 2019-12-25 10:04:23 7 浏览量 回答数 1

问题

可以将spark配置为将空数据集推断为空模式吗

我们有很多parquet数据集,按年/月/日/小时划分。 只有一个_SUCCESS文件,其中一些时间是空的。 我们实现迭代所有分区并执行工作的作业。打开空数据集时遇到问题。org.apache.spark.sql.AnalysisExcep...
小六码奴 2019-12-01 19:38:49 1805 浏览量 回答数 2

问题

更改Spark中的Metastore URI

在我的工作中,有不同的环境(开发,预生产和生产),在每个环境中,我们在其Hive Metastore中都有某些表。我的用户有权通过直接访问和查询所有这些Metastore,但我想使用sqlContext(或HiveContext)在spar...
社区小助手 2019-12-01 19:29:10 776 浏览量 回答数 1

问题

在 Ubuntu 16.04 里安装 SQL Server 2017

“网友”  - geminizhang  在帖子里提到SQL Server,我以为是在Linux里的。但微软最近发布的SQL Server 2017是支持在Linux里安装和使用的。 环境:2GB内存&#x...
dongshan8 2019-12-01 22:00:43 2339 浏览量 回答数 1

问题

Hbase 统计表行数的3种方式

转载自:http://www.hbase.group/article/41 有些时候需要我们去统计某一个hbase表的行数,由于hbase本身不支持SQL语言,只能通过其他方式实现。可以通过一下几...
pandacats 2019-12-20 21:16:20 0 浏览量 回答数 0

问题

spark-sql:查询临时表时异常(错误No Typetag)?报错

代码用途:简单测试spark-sql的读hdfs文件,然后用sql 简便提取临时数据 报错猜测:个人刚开始怀疑是pom文件依赖的版本有问题,现在也不确定啥问题,具体...
爱吃鱼的程序员 2020-06-14 16:38:00 0 浏览量 回答数 1

回答

最后,在我查看了spark-shell在服务器中自动创建的sqlContext变量的配置之后,我看到有很多url和配置变量,我在HDFS或其他服务器中没有权限。需要对PROD Metastore执行查询。 我知道用直线工作查询PROD Metastore,我知道我可以通过JDBC查询这个Metastore,所以我把这个调用的JDBC URL带到beeline。 然后我使用这个JDBC URL并开始使用本机Java(来自Scala)方法和实用程序来连接DBvíaJDBC: /We will need hive-jdbc-0.14.0.jar to connect to a Hive metastore via JDBC /import java.sql.ResultSetMetaDataimport java.sql.{DriverManager, Connection, Statement, ResultSet}import org.apache.spark.sql.types.StringTypeimport org.apache.spark.sql.types.StructFieldimport org.apache.spark.sql.types.StructTypeimport org.apache.spark.sql.Row/ In the following lines I connect to Prod Metastore via JDBC and I execute the query as if I am connecting to a simple DB. Notice that, using this method, you are not using distributed computing /val url="jdbc:hive2://URL_TO_PROD_METASTORE/BD;CREDENTIALS OR URL TO KERBEROS"val query="SELECT * FROM BD.TABLE LIMIT 100"val driver="org.apache.hive.jdbc.HiveDriver"Class.forName(driver).newInstanceval conn: Connection = DriverManager.getConnection(url)val r: ResultSet = conn.createStatement.executeQuery(query)val list =scala.collection.mutable.MutableList[Row]()/ Now we want to get all the values from all the columns. Notice that I creat a ROW object for each row of the results. Then I add each Row to a MutableList/while(r.next()){ var value : Array[String] = new ArrayString) for(i<-1 to r.getMetaData.getColumnCount()){ value(i-1) = r.getString(i)} list+=Row.fromSeq(value)} / Now we have the results of the query to PROD metastore and we want to transform this data to a Dataframe so we have to create a StructType with the names of the columns and we also need a list of rows with previous results /var array : Array[StructField] = new ArrayStructField)for(i<- 1 to r.getMetaData.getColumnCount){ array(i-1) =StructField(r.getMetaData.getColumnName(i),StringType)}val struct=StructType(array)val rdd=sc.parallelize(list)val df=sqlContext.createDataFrame(rdd,struct)r.closeconn.close请注意,此问题与我的其他答案有关。因为将Hive查询的结果导出到CSV的最佳方法是使用Spark(如何将Hive表导出为CSV文件?)。我想从PRE服务器中的Spark会话查询Prod Metastore。
社区小助手 2019-12-02 01:51:20 0 浏览量 回答数 0

问题

上海大数据数据分析课程

上海站【Cloudera 数据分析课程】     课时:4天     针对任何需要在Hadoop上实时地通过SQL和熟悉的脚本来管理、操纵和查询大型复杂数据的人。     学习Apache Pig、Apache Hive和Cl...
chen2007 2019-12-01 21:15:59 8476 浏览量 回答数 2

问题

mysql bash shell脚本输出错误

我试图创建一个运行sql查询的bash shell脚本,然后再创建一个在特定时间运行它的cronjob。 我创建了bash脚本,请参见下文 mysql -u $host -D $dbname -u $user...
祖安文状元 2020-01-05 19:00:45 0 浏览量 回答数 1

问题

【开源分享】-6期- Linkis 一款支持多种计算存储引擎的企业级计算中间件

一款支持多种计算存储引擎的企业级计算中间件。打通了 Spark、TiSpark、Hive 等存储引擎,提供统一作业执行服务,支持提交 SQL、PySpark、HQL 等各种脚本的计算请求。 特征 统...
montos 2020-05-08 10:55:23 9 浏览量 回答数 1

回答

1、首先确认你日志是否启用了mysql>show variables like 'log_bin'。 2、如果启用了,即ON,那日志文件就在mysql的安装目录的data目录下。 3、怎样知道当前的日志mysql> show master status。 4、看二进制日志文件用mysqlbinlog,shell>mysqlbinlog mail-bin.000001或者shell>mysqlbinlog mail-bin.000001 | tail,Windows 下用类似的。 MySQL的日志操作: 1、首先,登陆mysql后,执行sql语句:show variables like 'log_bin'。 2、#错误日志log-errol开启方式:在my.ini的[mysqld]选项下:添加代码:log-error=E:\log-error.txt。 记录内容:主要是记录启动、运行或停止mysqld时出现的致命性问题,都是系统级的错误记录。 3、#查询日志:log,开启方式:在my.ini的[mysqld]选项下:添加代码:log=E:/mysql_log.txt。 4、#二进制日志:log-bin,开启方式:在my.ini的[mysqld]选项下:添加代码:log-bin=E:/mysql_log_bin,记录内容:主要是记录所有的更改数据的语句,可使用mysqlbinlog命令恢复数据。 答案来源于网络
养狐狸的猫 2019-12-02 03:01:09 0 浏览量 回答数 0

问题

[@小川游鱼][¥20]我用hue执行hive SQL的时候 hbase报connectionException

我用hue 执行hivesql 的时候系统报错,java.net.SocketTimeoutException:callTimeout=60000, callDuration=68043: row 'log,,00000000000000'...
晓生寒 2019-12-01 19:26:45 667 浏览量 回答数 1

问题

PHP环境安全加固

php用的越来越多,安全问题也变得更为重要,php环境提供的安全模式是个非常重要的内嵌的安全机制,能够控制一些php中的函数,比如system(),同时把很多文件操作函数...
正禾 2019-12-01 22:10:17 3281 浏览量 回答数 0

问题

xgboost任务执行失败

Algo Job Failed-User Error-Table row data has all zero value。这是什么鬼,从字面上看,是说某行不能全为0? [1] [2016-05-...
天之岚 2019-12-01 21:30:24 4568 浏览量 回答数 1

问题

检测数据传输服务器是否能够连通要迁移的源数据库

检测数据传输服务器是否能够连通要迁移的源数据库。数据传输服务通过JDBC协议创建到源数据库的连接,当创建连接失败时,这个检查项即失败。 当源库连接性预检查失败时,可能是由于如下几种原因:...
云栖大讲堂 2019-12-01 21:24:27 1388 浏览量 回答数 0

问题

【漏洞公告】微软“周二补丁日”—2018年08月

美国时间2018年8月14日,微软针对已在各种产品中发现并解决的漏洞发布了每月一次的安全公告。本月的公告版本涉及62个新漏洞,其中20个被评为“关键”,38个被评为“重要”,38个被评...
正禾 2019-12-01 21:33:34 14874 浏览量 回答数 9

云产品推荐

上海奇点人才服务相关的云产品 小程序定制 上海微企信息技术相关的云产品 国内短信套餐包 ECS云服务器安全配置相关的云产品 开发者问答 阿里云建站 自然场景识别相关的云产品 万网 小程序开发制作 视频内容分析 视频集锦 代理记账服务 阿里云AIoT