Heim  >  Artikel  >  Datenbank  >  Ein Artikel fasst MySQL-Datenbankanwendungen und häufige Probleme zusammen

Ein Artikel fasst MySQL-Datenbankanwendungen und häufige Probleme zusammen

藏色散人
藏色散人nach vorne
2022-01-07 15:14:262447Durchsuche

1. Installieren Sie MySQL

1, CentOS-System

1.) Installieren Sie MySQL

Laden Sie die Repo-Quelle von MySQL herunter und installieren Sie sie
$ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
$ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
Installieren Sie MySQL
$ sudo yum install -y mysql-server

2 . ) Starten/Neustarten/Herunterfahren des Dienstes

service mysqld start | restart | stop

2. Die Installation von MySQL im Alpine-System ist eigentlich eine Open-Source-MariaDB-Datenbank, die vollständig mit MySQL kompatibel ist Funktionen, Speicher-Engines und einige neue Funktionsverbesserungen sind besser als MySQL. Installationsreferenz

$ apk update

# 安装数据库及客户端
$ apk add mysql mysql-client

# 初始化数据库
$ mysql_install_db --user=mysql --datadir=/var/lib/mysql

# 启动服务
$ rc-service mariadb start  # 若没有rc,安装:apk add openrc

# 修改密码
$ mysqladmin -u root password '新root密码'

# 加入开机启动
$ rc-update add mariadb default
2. Betrieb von MySQL

1. Melden Sie sich bei der Datenbank an

Standardinitialisierung und melden Sie sich direkt an

$ mysql
Wenn die Eingabeaufforderung fehlschlägt, bedeutet dies Es gibt ein Passwort, führen Sie aus:
$ mysql -uroot -p

# 一次性登录
$ mysql -u用户 -p密码
3. Benutzerverwaltung: Die Benutzertabelle von MySQL wird zum Speichern aller Benutzerberechtigungen verwendet. Es gibt zwei Benutzer mit demselben Namen und unterschiedlichen Hosts. Gängige Hostwerte sind wie folgt:

localhost: Kann nur auf der Serverseite verwendet werden

192.168.4.%: Das angegebene IP-Segment kann verwendet werden

%: Platzhalter , was darauf hinweist, dass alle IP-Benutzer es verwenden können, hauptsächlich für Remote-Verbindungen

Beim Erstellen/Löschen von Benutzern können Sie den angegebenen Benutzer@'Host' verwenden. Wenn nicht angegeben, ist der Standardwert %

# 查看所有数据库
mysql> show databases;

# 创建数据库
mysql> create database xxx charset=utf8;

# 删除数据库
mysql> drop database xxx;

# 切换数据库
mysql> use mysql;

# 查看表
mysql> show tables;

# 创建表
mysql> create table xxx (
    id int,
    name varchar(20),
    update_time datetime
);

# 删除表
mysql> drop table xxx;

# 显示表结构
mysql> desc xxx;

# 查询指定a,b字段的记录,不知道用*代替
mysql> select a,b form xxx;

# 插入记录
mysql> insert into xxx(id,user) values(1,'wang',now());

# 删除记录
mysql> delete from xxx where name='wang';

# 清屏命令
mysql> system clear;

# 退出
mysql> quit;
4

1.) SQL-Skript-Batch-Ausführung

# 切换到mysql权限数据库
mysql> use mysql;

# 查看用户及所属的host
mysql> select user,host from user;

# 新建用户并设置密码
mysql> create user '用户名' identified by '密码';

# 上面不指定host,默认%,等同于:
mysql> create user '用户名'@'%' identified by '密码';

# 删除用户(只删除host为%的用户)
mysql> drop user '用户名';

# 查看用户权限
mysql> show grants for '用户名';

# 设置权限,并指定数据库
mysql> grant all privileges on xxxDB.* to '用户名';

# 修改密码,注意密码处不能直接password='新密码'
mysql> update user set password=password('新密码') where user='用户名';

# 刷新权限表
mysql> flush privileges;

2.) Datenbank sichern/wiederherstellen

$ mysql -uroot -p -Dxxx < ./init.sql    # xxx为数据库
3. Häufig gestellte Fragen

1, Wie lösche ich das Root-Passwort, wenn ich es vergesse?

$ mysqldump --all-databases -h127.0.0.1 -u root -p > ./backup/mysql-bak.sql
$ mysqldump --all-databases -h127.0.0.1 -u root -p < ./backup/mysql-bak.sql
Hier ist zu beachten, dass jeder Befehl mit einem Semikolon „;“ enden muss. Nach dem Ausführen der oben genannten Vorgänge wird das Root-Passwort gelöscht.

2. Fehler „Leerer Benutzer“

FEHLER 1044 (42000): Zugriff für Benutzer „@'localhost“ auf die Datenbank „mysql“ verweigert. Fehler:

Ursache:

In der Benutzertabelle von befindet sich ein Benutzername Die MySQL-Datenbank Ein leeres Konto ist ein anonymes Konto. Obwohl Sie sich beim Anmelden mit Root anmelden, melden Sie sich tatsächlich anonym an.

Lösung:

$ mysql –skip-grant-table &
  mysql> use mysql;
  mysql> update user set password=password('新密码') where user='root';
  mysql> flush privileges;
  mysql> quit;
3. Root kann für den Dienst verwendet werden, aber die Remote-Anmeldung ist nicht möglich Standardmäßig ändert MySQL den Standarddatenspeicher

Das obige ist der detaillierte Inhalt vonEin Artikel fasst MySQL-Datenbankanwendungen und häufige Probleme zusammen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen