mysql错误,用于验证和创建表

时间:2014-11-15 18:14:21

标签: mysql bash

我还没有介绍过mysql,但必须使用它。我安装了它并试图运行它:

mysql> CREATE TABLE h7vsk1200001 (quid VARCHAR(15), suid VARCHAR(15), iden FLOAT, alen INT, mism INT, gapo INT, qsta INT, qend INT, ssta INT, send INT, eval FLOAT, bits INT);

我理解的是表的基础,其列名及其数据类型。每当我运行它时,我都会收到以下错误消息:

bash: error sintáctico cerca del elemento inesperado `('

顺便说一下,如果重要的话,我正在使用Ubuntu 14.04。另外,如果我尝试运行不带参数的CREATE TABLE命令,我会得到:

$ mysql> CREATE TABLE
ERROR 1045 (28000): Access denied for user 'carlos'@'localhost' (using password: NO)

考虑到我对bash没什么经验,也没有使用mysql的经验(正如你所说的那样)

2 个答案:

答案 0 :(得分:0)

首先需要启动mysql shell。你不能在bash中运行这样的查询:你需要使用MySQL客户端。您收到第一个错误,因为bash正在尝试解析括号,第二个错误是您运行mysql命令而管道(>)输出到a时的结果名为CREATE的新文件。

请注意,您正在获取ACCESS DENIED,因为您显然没有密码的用户carlos无法访问。使用mysql -u myusername -p使用用户名myusername登录,并mysql提示输入密码。

thom@lethe-arch:~$ # bash shell
thom@lethe-arch:~$ mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 443
Server version: 10.0.14-MariaDB-log MariaDB Server

Copyright (c) 2000, 2014, Oracle, SkySQL Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| test               |
+--------------------+
2 rows in set (0.01 sec)

mysql> -- type queries here

(注意:MariaDB是MySQL的一个分支,行为完全相同)

答案 1 :(得分:0)

似乎你必须创建一个用户'carlos'并允许必要的权限,如:

 mysql> use mysql;

 mysql> CREATE USER 'carlos'@'localhost' IDENTIFIED BY 'yourpassword';

 mysql> GRANT ALL PRIVILEGES ON . TO 'carlos'@'localhost' WITH GRANT OPTION;