linux下mysql的一些基本操作

安装mysql数据库之后,连接mysql数据库时出现:ERROR 1045 (28000): Access denied for user (using password: NO),我使用了下面的操作,就给解决了。
键入命令 mysql -uroot -p, 回车后提示你输入密码,输入123,然后回车即可进入到mysql中了,mysql的提示符是:
mysql>
以下摘自"水知道答案"的博客。
其它mysql命令:
第一招、mysql服务的启动和停止
net stop mysql
net start mysql


第二招、登陆mysql
语法如下: mysql -u用户名 -p用户密码
键 入命令mysql -uroot -p, 回车后提示你输入密码,输入12345,然后回车即可进入到mysql中了,mysql的提示符是:
mysql>
注意,如果是连接到另外的机器上,则需要加入一个参数-h机器IP


第三招、增加新用户
格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"
如,增加一个用户user1密码为password1,让其可以在 本机上登录, 并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入mysql,然后键入以下命令:
grant select,insert,update,delete on *.* to user1@localhost Identified by "password1";
如果希望该用户能够在任何机器上登陆mysql,则将localhost改为"%"。
如果你不想user1 有密码,可以再打一个命令将密码去掉。
grant select,insert,update,delete on mydb.* to user1@localhost identified by "";


第四招: 操作数据库
登录到mysql中,然后在mysql的 提示符下运行下列命令,每个命令以分号结束。
1、 显示数据库列表。
show databases;
缺省有两个数据 库:mysql和test。 mysql库存放着mysql的系统和用户权限信息,我们改密码和新增用户,实际上就是对这个库进行操作。
2、 显示库中的数据表:
use mysql;
show tables;
3、 显示数据表的结构:
describe 表名;
4、 建库与删库:
create database 库名;
drop database 库名;
5、 建表:
use 库名;
create table 表名(字段列表);
drop table 表名;
6、 清空表中记录:
delete from 表名;
7、 显示表中的记录:
select * from 表名;


第五 招、导出和导入数据
1. 导出数据:
mysqldump --opt test > mysql.test
即将数据 库test数据库导出到mysql.test文件,后者是一个文本文件
如:mysqldump -u root -p123456 --databases dbname > mysql.dbname
就是把数据库dbname导出到文件mysql.dbname中。
2. 导入数据:
mysqlimport -u root -p123456 < mysql.dbname。
不用 解释了吧。
3. 将文本数据导入数据库:
文本数据的字段数据之间用tab键隔开。
use test;
load data local infile "文件名" into table 表名;


第六招、乱码问题
MySQL 的字符集支持(Character Set Support)有两个方面:字符集(Character set)和排序方式(Collation)。对于字符集的支持细化到四个层次: 服务器(server),数据库(database),数据表(table)和连接(connection)。
查看系统的字符集和排序方式的设 定可以通过下面的两条命令:
查看字符集:
1. mysql> SHOW VARIABLES LIKE 'character_set_%';
显示字符集设置如下:
1. +--------------------------+---------------------- ------+
2. | Variable_name | Value |
3. +--------------------------+---------------------- ------+
4. | character_set_client | latin1 |
5. | character_set_connection | latin1 |
6. | character_set_database | latin1 |
7. | character_set_results | latin1 |
8. | character_set_server | latin1 |
9. | character_set_system | utf8 |
10. | character_sets_dir | /usr/share/mysql/charsets/ |
11. +--------------------------+---------------------- ------+
查看排序方式 (Collation)
1. mysql> SHOW VARIABLES LIKE 'collation_%';
显示默认 值:
1. +----------------------+-------------------+
2. | Variable_name | Value |
3. +----------------------+-------------------+
4. | collation_connection | latin1_swedish_ci |
5. | collation_database | latin1_swedish_ci |
6. | collation_server | latin1_swedish_ci |
7. +----------------------+-------------------+
上面列出的值就是系统的默认 值。如果你奇怪系统怎么默认是latin1的瑞典语排序方式,原因是MySQL由瑞典的T.c.X.DataKonsultAB公司(目前公司名称为 MySQL AB)开发,不用再多说了吧。
当我们按照原来的方式通过PHP存取MySQL数据库时,就算设置了表的默认字符集为utf8并且通 过UTF-8编码发送查询,你会发现存入数据库的仍然是乱码。问题就出在这个connection连接层上。解决方法是在发送查询前执行一下下面这句:
SET NAMES 'utf8′;

 

转自http://www.byfor.cn/html-172468-1.html

你可能感兴趣的:(linux下mysql的一些基本操作)