### Linux MySQL 操作指南 #### 一、MySQL 服务管理 在 Linux 系统中,可以通过以下命令来启动、停止和检查 MySQL 服务的状态: 1. **检查 MySQL 服务状态**: ```bash /etc/init.d/mysqld status ``` 这条命令用于查看 MySQL 服务是否正在运行。 2. **启动 MySQL 服务**: ```bash /etc/init.d/mysqld start ``` 如果 MySQL 服务没有运行,可以使用此命令启动它。 3. **停止 MySQL 服务**: ```bash /etc/init.d/mysqld stop ``` 当需要关闭 MySQL 服务时,可以执行此命令。 #### 二、登录与密码管理 1. **设置 root 用户密码**: ```bash mysqladmin -u root password '123456' ``` 这个命令用于为 root 用户设置密码。 2. **修改 root 用户密码**: ```bash mysqladmin -u root -p'123456' password 'abc123' ``` 使用此命令可以更改 root 用户的密码。这里假设原密码为 "123456",新密码为 "abc123"。 3. **登录 MySQL 数据库**: ```bash mysql -u root (-u root) -p ``` 此命令用于登录 MySQL 数据库。输入 `-u root` 表示使用 root 用户名进行登录, `-p` 后会提示输入密码。 #### 三、用户权限管理 1. **创建并授予用户权限**: ```bash GRANT SELECT ON `db_name`.* TO 'user'@'%' IDENTIFIED BY 'password'; ``` 例如,如果要创建一个名为 test1 的用户,并允许其对所有数据库具有 SELECT 权限,则可以使用如下命令: ```sql GRANT SELECT, INSERT, UPDATE, DELETE ON *.* TO 'test1'@"%" IDENTIFIED BY 'abc'; ``` 2. **限制用户权限**: 如果想要创建一个仅对 localhost 可用的用户 test2,并且只允许其访问 mydb 数据库,可以使用以下命令: ```sql GRANT SELECT, INSERT, UPDATE, DELETE ON mydb.* TO 'test2'@'localhost' IDENTIFIED BY 'abc'; ``` 这样 test2 用户就只能在 localhost 上访问 mydb 数据库了。 3. **连接受限用户**: ```bash mysql -h localhost -u test2 -pabc ``` 该命令用于连接到受限用户 test2。注意,这里的 `-h localhost` 是必须的,即使是在本地连接。 #### 四、数据库管理 1. **显示所有数据库**: ```sql SHOW DATABASES; ``` 该命令用于列出所有可用的数据库。 2. **使用特定数据库**: ```sql USE `db_name`; ``` 使用这个命令可以切换到指定的数据库。 3. **显示数据库中的表**: ```sql SHOW TABLES; ``` 在使用某个数据库后,可以使用这条命令查看该数据库中的所有表。 #### 五、数据表操作 1. **查看表结构**: ```sql DESCRIBE `table_name`; ``` 这个命令用于查看指定表的结构。 2. **创建数据库**: ```sql CREATE DATABASE `db_name`; ``` 使用此命令可以创建新的数据库。 3. **删除数据库**: ```sql DROP DATABASE `db_name`; ``` 若要删除现有数据库,可以使用这条命令。 4. **创建表**: ```sql CREATE TABLE `table_name` ( ... ); ``` 创建表时需要指定表结构。 5. **删除表**: ```sql DROP TABLE `table_name`; ``` 该命令用于删除指定的表。 6. **插入数据**: ```sql INSERT INTO `table_name` VALUES (...); ``` 使用这条命令可以向表中插入数据。 7. **更新数据**: ```sql UPDATE `table_name` SET column = value WHERE condition; ``` 使用这条命令可以更新表中的数据。 8. **删除数据**: ```sql DELETE FROM `table_name` WHERE condition; ``` 使用这条命令可以从表中删除数据。 9. **查询数据**: ```sql SELECT * FROM `table_name` WHERE condition; ``` 使用这条命令可以查询表中的数据。 10. **修改表结构**: ```sql ALTER TABLE `table_name` ADD COLUMN <column_name> <data_type>; ``` 使用这条命令可以在表中添加新的列。 #### 六、数据库备份与恢复 1. **导出整个数据库**: ```bash mysqldump --opt `db_name` > `db_name`.sql ``` 该命令将整个数据库导出为 SQL 文件。 2. **导出单个表**: ```bash mysqldump -u root -p123456 --databases `db_name` `table_name` > `db_name`_`table_name`.sql ``` 使用这条命令可以仅导出指定数据库中的指定表。 3. **导入数据**: ```bash mysql -u root -p123456 < `db_name`.sql ``` 使用这条命令可以将之前导出的数据导入到数据库中。 4. **从文件导入数据到表**: ```bash USE `db_name`; LOAD DATA LOCAL INFILE "file_path" INTO TABLE `table_name`; ``` 例如,要将位于 D:\mysql.txt 的数据导入到名为 mytable 的表中,可以使用: ```bash LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE mytable; ``` #### 七、总结 以上就是 Linux 下 MySQL 的基本操作介绍,包括服务管理、登录及密码管理、用户权限管理、数据库管理、数据表操作以及数据库备份与恢复等内容。掌握这些基本操作对于日常管理和维护 MySQL 数据库是非常重要的。通过这些命令和方法,你可以有效地管理你的数据库系统,确保数据的安全性和完整性。
/etc/init.d/mysqld status
/etc/init.d/mysqld start
/etc/init.d/mysqld stop
2,给用户配置初始密码:※脱※敏※56:
mysqladmin -u root -password 123456
3,修改root用户密码为 abc123
mysqladmin -u root -p123456 password abc123
4,如果想去掉密码:
mysqladmin -u root -pabc123 password ""
5,root连接数据库有密码和无密码:
mysql -u root(-uroot) -p
mysql
6,增加用户 test1 密码 abc,让它可以在任何主机上登录,并对所有数据库有查询,插入,修改,删除的权限:
格式: grant select on 数据库.* to 用户名@登录主机 identified by "密码"
grant select,insert,update,delete on *.* to test1@"%" Identified by "abc";
7,使用test1账号从其他主机上登录命令:
mysql -h 主机名 -u test1 -pabc
eg: mysql -h 10.239.48.109 -u test1 -pabc
8,增加一个用户test2,让它只可以在localhost上登录,并可以对数据库mydb进行查询,插入,修改,删除的操作,
这样用户即使使用知道test2的密码,他也无法从internet 上直接访问数据库,只能通过mysql主机上的web页面来访问。
grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc";
- 粉丝: 3
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助