安装

yum -y install mariadb mariadb-server 

服务管理命令

systemctl start mariadb.service # 开启服务 
systemctl enable mariadb.service # 开机启动 
systemctl status mariadb.service # 查看服务状态
systemctl stop mariadb.service # 关闭服务

初始化

mysql_secure_installation 提示:y = yes,n = no,大写表示默认值
Enter current password for root (enter for none): 输入当前root账号密码,刚安装默认为空,直接回车即可 
Set root password? [Y/n] 是否输入root密码,输入y 回车 
New password: 输入密码 
Re-enter new password: 再次输入密码
Remove anonymous users? [Y/n] 删除匿名用户 y 
Disallow root login remotely? [Y/n] 禁止root账号远程登录 y 
Remove test database and access to it? [Y/n] 删除测试表 y 
Reload privilege tables now? [Y/n] 重新加载配置表 y

报错

数据库未启动,则 mysql_secure_installation 报错:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

登陆

mysql -uroot -p

数据库相关命令

创建数据库

涉及编码问题,初学者或一般人建议使用 Navichat

# 创建数据库
create database testdatabase;
# 创建数据库:设置编码为 utf8mb4 排序方式为 utf8mb4_unicode_ci
create database testdatabase DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci;
# 创建数据库:如果不存,才创建,并设置编码为 utf8mb4 排序方式为 utf8mb4_unicode_ci
create database IF NOT EXISTS testdatabase DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci;

产看 Mysql 所有数据库的编码及排序方式

SELECT SCHEMA_NAME 'database', default_character_set_name 'charset', DEFAULT_COLLATION_NAME 'collation' FROM information_schema.SCHEMATA;

修改已存在数据库编码及排序方式

# 修改数据库编码
alter database testdatabase set character utf8;
# 修改数据库编码及排序方式
alter database testdatabase set character utf8 collate utf8_general_ci; 

创建用户

命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password';

例:

CREATE USER 'testuser'@'%' IDENTIFIED BY '123456';
CREATE USER 'testuser'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'testuser'@'192.168.1.110' IDENDIFIED BY '123456';
CREATE USER 'testuser'@'%' IDENTIFIED BY '123456';
CREATE USER 'testuser'@'%' IDENTIFIED BY '';
CREATE USER 'testuser'@'%';

授权权限

命令:GRANT privileges ON databasename.tablename TO 'username'@'host';
说明:GRANT privileges ON * TO 'testuser'@'%';
privileges:用户的操作权限(SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL)
databasename:数据库名
tablename:表名
例:

# 授予 testuser 使用密码 123456 登陆,并能够查询,插入 testdatabase.testtable
GRANT SELECT, INSERT ON testdatabase.testtable TO 'testuser'@'%' IDENTIFIED BY '123456';
# 授予 testuset 使用密码 123456 登陆,并能够管理所有数据库
GRANT ALL ON *.* TO 'testuser'@'%' IDENTIFIED BY '123456';
# 注意:以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令
GRANT ALL privileges ON databasename.tablename TO 'username'@'host' IDENTIFIED BY 'PASSWROD' WITH GRANT OPTION;
# 刷新权限,使权限生效
flush privileges;
最后修改:2021 年 12 月 21 日 04 : 08 PM
如果觉得文章帮助了您,您可以随意赞赏。