# linux连接Mysql数据库

# 1.连接数据库

连接到远程主机上的MYSQ: mysql -h主机地址 -u用户名 -p用户密码

连接到本机上的MYSQL: mysql -uroot -p

回车后提示输入密码

退出MYSQL命令 exit

# 2.操作数据库

显示数据库:mysql> show databases;

创建数据库 :mysql> create database name;

选择数据库:mysql> use databasename;

直接删除数据库,不提醒:mysql> drop database name;

删除数据库前,有提示:mysql> mysqladmin drop databasename;

显示当前mysql版本和当前日期:mysql> select version(),current_date;

数据库备份:mysqldump -uroot -p table_name > /backup/mysql.sql

数据库还原:mysql -uroot -p table_name < /backup/mysql.sql

# 3.数据表操作

显示表:mysql> show tables;

显示具体的表结构:mysql> describe tablename;

删除MySQL表的通用SQL语法:mysql> DROP TABLE table_name ;

增加字段:mysql> ALTER TABLE table_name ADD field_name field_type;

修改原字段名称及类型:mysql> ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;

删除字段:mysql> ALTER TABLE table_name DROP field_name;

# 4.数据库授权远程用户访问

GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY '123456';

# 5.导出数据库

# 1.导出数据和表结构:

mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql

#/usr/local/mysql/bin/ mysqldump -uroot -p abc > abc.sql

mysqldump -uroot -ppassword cmcc_tva > test.sql

# 2.导出表:

mysqldump -uroot -ppassword 数据库名 表名> test.sql

# 3.只导出表结构

mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名.sql

#/usr/local/mysql/bin/ mysqldump -uroot -p -d abc > abc.sql

注:/usr/local/mysql/bin/ ---> mysql的data目录

# 6.导入数据库

# 1.建立数据库

mysql>create database abc;

# 2.导入数据库

# (1)方法一

选择数据库:

mysql>use abc;

设置数据库编码:

mysql>set names utf8;

导入数据(注意sql文件的路径)

mysql>source /home/abc/abc.sql;

# (2)方法二

mysql -u用户名 -p密码 数据库名 < 数据库名.sql

建议使用第二种方法导入。

# 3.mysqldump命令找不到

# 1、解决bash: mysql: command not found 的方法

[root@DB-02 ~]# mysql -u root

-bash: mysql: command not found 原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。 首先得知道mysql命令或mysqladmin命令的完整路径,比如mysql的路径是:/usr/local/mysql/bin/mysql,我们则可以这样执行命令:

# ln -s /usr/local/mysql/bin/mysql /usr/bin

补充:

linux下,在mysql正常运行的情况下,输入mysql提示: mysql command not found

遇上-bash: mysql: command not found的情况别着急,这个是因为/usr/local/bin目录下缺失mysql导致,只需要一下方法建立软链接,即可以解决: 把mysql安装目录,比如MYSQLPATH/bin/mysql,映射到/usr/local/bin目录下: # cd /usr/local/bin # ln -fs /MYSQLPATH/bin/mysql mysql

还有其它常用命令mysqladmin、mysqldump等不可用时候都可按用此方法解决。 注:其中MYSQLPATH是mysql的实际安装路径

# 2、mysqldump命令找不到

[root@host-10-1-1-103 data]# whereis mysql mysql: /usr/bin/mysql /usr/lib64/mysql /usr/local/mysql /usr/share/mysql

[root@host-10-1-1-103 data]# ln -fs /usr/local/mysql/bin/mysqldump /usr/bin

或者find / -name mysqldump 查找

然后映射路径

# 安全模式--无法以非主键修改

SET SQL_SAFE_UPDATES = 0; 关闭安全模式 SET SQL_SAFE_UPDATES = 1; 开启安全模式