软工课程项目-数据库管理
目录
说明
<>连带括号内的内容大概率是要进行相应的替换。
直接复制可能会出事,建议先仔细看看。
sql,sh分别表示sql语句和命令行,如果没表明,请甄别一下。
安装配置
sudo apt-get install mysql-server
下载完成后,完成安装时配置
mysql_secure_installation
mysql server 启动关停
- 第一种
mysql启动:
service mysql start &
mysql关停:
service mysql stop
- 第二种
mysqld启动:
mysqld_safe is the recommended way to start a mysqld server on Unix
登录
mysql -u <user_name> -p
数据库
查看
sql:
show datebases;
创建
sql:
create database <database_name>
运行sql文件
mysql -u <user_name> -p <database_name> < <path_to_sql_file>
mysql基本信息查看
mysql服务器运行状态
systemctl status mysql.service
端口
sh:
mysql -u <user_name> -p
sql:
show global variables like 'port';
数据导入,导出
mysql workbench
依据官方文档操作即可。如果是将数据导入已有的表时,需要注意数据类型对应准确。
mysql in Linux server
导入:
使用sql查看secure_file_priv,这里是需要被导入数据库的文件目录
show global variables like '%secure_file_priv%';
sql:
use <database_name>
fields terminated
, optionally enclosed
,escaped
, lines terminated
的是根据workbench导出的数据设置的
load data infile "<path_to_data_file>" into table <table_name> fields terminated by ';' optionally enclosed by '"' escaped by '"' lines terminated by '\n';
导出:
使用mysqldump
数据编码修改
数据编码不一致可能导致数据导入失败
sql:
status; -- 查看编码信息
-- 修改编码信息
set character_set_client=utf8;
set character_set_connection=utf8;
set character_set_database=utf8;
set character_set_server=utf8;
给予本地程序以一个身份访问数据库的权限
以root身份从本地(localhost)访问数据库为例
sql:
use mysql; -- 在mysql表进行操作
SELECT User,Host FROM muser; -- 查看用户和用户用户访问的主机
DROP USER 'root'@'localhost'; -- 删除root从localhost访问的设置,通常因为其他权限属性不符合使用而被删除
CREATE USER 'root'@'localhost' IDENTIFIED BY ''; -- localhost换成通配符%,可以让root从任何主机访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION; -- 给予所有权限
FLUSH PRIVILEGES; -- 使修改生效